@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Nunito:wght@500;600;700;800;900&display=swap');
:root{--navy:#12395b;--blue:#117bb0;--teal:#0b8d93;--green:#568b46;--cream:#fffdf6;--ink:#183c53;--shadow:0 16px 42px #0d36551a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:17px;line-height:1.65}a{color:inherit}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #ffb51f;outline-offset:4px}.skip{position:absolute;top:-80px;left:12px;background:white;padding:10px;z-index:100}.skip:focus{top:10px}.site-header{height:85px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,85px);background:#fffefaf7;position:relative;z-index:5;box-shadow:0 2px 12px #102d3d0c}.brand,.footer-brand{font-family:'Nunito',sans-serif;font-style:italic;font-weight:900;font-size:38px;line-height:1;text-decoration:none;color:var(--navy);letter-spacing:-2px}.brand{position:relative}.brand-swoosh{position:absolute;left:24%;right:3%;bottom:-8px;height:5px;border-radius:100%;background:#7ab449;transform:rotate(-4deg)}nav{display:flex;gap:clamp(12px,3vw,43px);align-items:center}nav a{font-size:16px;font-weight:800;text-decoration:none;padding:8px 12px;border-radius:30px}nav a.active,nav a:hover{background:#d9f0ff}.view[hidden]{display:none!important}.hero{position:relative;min-height:640px;overflow:hidden;display:flex;align-items:center}.hero-image{position:absolute;inset:0;background:url('../assets/rangitoto-coast.webp') center 52%/cover no-repeat}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(235,248,251,.97) 0%,rgba(235,248,251,.92) 28%,rgba(235,248,251,.66) 46%,rgba(235,248,251,.10) 73%,transparent 100%)}.hero-content{position:relative;z-index:1;width:min(700px,64%);padding:55px 0 75px clamp(25px,6vw,100px)}.eyebrow,.kicker{display:block;color:#155e69;font-weight:800;font-size:14px;letter-spacing:.07em;text-transform:uppercase}.eyebrow span{color:#e5a525}.hero-title{display:flex;align-items:center;gap:18px;margin-top:10px}.hero h1{font:900 italic clamp(64px,7vw,110px)/1.05 'Nunito',sans-serif;letter-spacing:-5px;color:#083b62;margin:0}.speak{border:0;background:#fff9dc;box-shadow:0 6px 15px #16425d2e;border-radius:50%;width:57px;height:57px;flex:none;color:#2f7d46;font-weight:900;font-size:22px}.speak:hover,.inline-speak:hover{background:#fff1b4}.tagline{font-size:clamp(21px,2.2vw,28px);font-weight:800;color:#0a476c;margin:15px 0 26px}.intro{max-width:550px;font-size:20px;line-height:1.5;color:#113e5b}.intro p{margin:0 0 12px}.intro .lead{font-size:clamp(22px,2.4vw,29px);font-weight:800}.primary-cta{display:inline-flex;gap:18px;align-items:center;margin-top:26px;padding:14px 23px;border-radius:100px;background:#147fa5;color:white;text-decoration:none;font-weight:800;box-shadow:0 6px 0 #0c5e7a}.primary-cta:hover{background:#0d668a}.welcome{max-width:1200px;margin:65px auto 20px;padding:0 35px;display:flex;justify-content:space-between;align-items:center}.welcome h2,.interior h1{font:900 clamp(34px,4vw,54px)/1.16 'Nunito',sans-serif;letter-spacing:-1.5px;color:#103c5b;margin:10px 0 12px}.welcome p{max-width:690px;margin:0;font-size:19px}.sun-doodle{font-size:110px;color:#f3bd3b;line-height:1;padding:0 35px}.topic-grid{max-width:1200px;margin:30px auto 75px;padding:0 35px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.topic-card{display:flex;flex-direction:column;min-height:290px;padding:29px;border-radius:27px;text-decoration:none;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s}.topic-card:hover{transform:translateY(-5px);box-shadow:0 22px 44px #0d36552c}.topic-card.safety{background:#f7f2d9}.topic-card.ai{background:#dff4ff}.topic-card.choices{background:#e5f4df}.topic-icon{font-size:39px;line-height:1;color:#558f43}.ai .topic-icon{color:#087aaf}.topic-card h3,.topic-card h2{font:900 25px/1.22 'Nunito',sans-serif;margin:19px 0 10px;color:#12395b}.topic-card p{margin:0 0 22px;font-size:16px;line-height:1.55}.topic-link{font-weight:800;margin-top:auto;color:#0a6483}.personal-note{max-width:1120px;margin:0 auto 90px;padding:35px 45px;display:flex;gap:30px;align-items:start;border-radius:30px;background:#fff0dd}.note-symbol{font:900 100px/1 Georgia,serif;color:#e7aa51}.personal-note h2{font:900 32px 'Nunito',sans-serif;margin:0 0 10px}.personal-note p{margin:0 0 15px;max-width:700px}.personal-note a,.text-link{font-weight:800;color:#0b6c8d;text-decoration-thickness:2px;text-underline-offset:4px}.interior{max-width:1190px;margin:auto;padding:60px 35px 100px;min-height:65vh}.interior h1{max-width:850px}.back{display:inline-block;color:#0b7397;font-weight:800;text-decoration:none;margin-bottom:35px}.back:hover{text-decoration:underline}.section-intro{font-size:22px;line-height:1.55;max-width:770px;color:#30566a}.interior .topic-grid{padding:0;margin:42px 0}.story-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.8fr);gap:65px;margin-top:28px}.story-layout p{font-size:18px}.story-aside{background:#e3f3f6;border-radius:28px;padding:35px;align-self:start}.aside-mark{width:65px;height:65px;background:#f9df83;border-radius:50%;display:grid;place-items:center;font:900 italic 43px 'Nunito',sans-serif;color:#0b4d6a}.story-aside h2{font:900 28px/1.25 'Nunito',sans-serif}.pronounce-line{display:flex;flex-direction:column;align-items:start;gap:12px;margin-top:25px}.pronounce-line a{font-size:14px;color:#116b8a}.inline-speak{border:0;border-radius:40px;background:#fff9dc;padding:10px 18px;font-weight:800;color:#17576d}.info-panel{background:#e7f5ee;border-radius:26px;padding:35px;max-width:760px;margin-top:40px}.info-panel h2{font:900 27px 'Nunito',sans-serif}.guide-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:45px}.guide-steps article{background:#e6f4f7;padding:30px;border-radius:25px}.guide-steps article:nth-child(2){background:#f8f0d8}.guide-steps article:nth-child(3){background:#eaf3e0}.guide-steps article span{font:900 28px 'Nunito',sans-serif;color:#1688a3}.guide-steps h2{font:900 25px/1.2 'Nunito',sans-serif;margin:18px 0 10px}.guide-steps p{margin:0}.guide-footer{margin-top:35px;color:#4e6875;font-style:italic}footer{background:#123c57;color:white;padding:45px clamp(25px,6vw,100px);display:flex;align-items:start;justify-content:space-between;gap:20px;flex-wrap:wrap}footer .footer-brand{color:white;font-size:32px}footer p{margin:8px 0;font-size:14px}.footer-links{display:flex;gap:25px;flex-wrap:wrap}.footer-links a{font-weight:700;text-decoration:none}.footer-links a:hover{text-decoration:underline}.footer-small{width:100%;opacity:.8}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:850px){.hero{min-height:600px}.hero-content{width:80%}.hero-shade{background:linear-gradient(90deg,#eaf8f8f5 0%,#eaf8f8d9 55%,#eaf8f855 100%)}.topic-grid,.guide-steps{grid-template-columns:1fr 1fr}.story-layout{grid-template-columns:1fr}.sun-doodle{font-size:75px}}
@media(max-width:620px){body{font-size:16px}.site-header{height:auto;min-height:75px;align-items:start;flex-direction:column;padding:16px 18px 12px;gap:20px}.brand{font-size:33px}nav{width:100%;justify-content:space-between;gap:0}nav a{font-size:14px;padding:6px 8px}.hero{min-height:670px;align-items:start}.hero-image{background-position:62% center}.hero-shade{background:linear-gradient(180deg,#eaf8f8fa 0%,#eaf8f8f0 55%,#eaf8f899 79%,#eaf8f800 100%)}.hero-content{width:100%;padding:36px 22px 55px}.hero h1{font-size:66px;letter-spacing:-3px}.speak{width:47px;height:47px}.eyebrow{font-size:12px}.intro{font-size:18px}.intro .lead{font-size:23px}.tagline{font-size:22px}.welcome{margin:45px auto 15px;padding:0 22px}.welcome h2{font-size:35px}.sun-doodle{display:none}.topic-grid,.guide-steps{grid-template-columns:1fr;padding:0 20px;gap:18px}.topic-card{min-height:240px}.personal-note{margin:0 20px 60px;padding:25px;gap:10px}.note-symbol{font-size:50px}.personal-note h2{font-size:26px}.interior{padding:40px 22px 70px}.interior h1{font-size:40px}.section-intro{font-size:19px}.interior .topic-grid{padding:0}.story-layout{gap:20px}footer{padding:35px 25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.topic-card{transition:none}}

/* V0.2 additions: readable, responsive guidance */
[hidden]{display:none!important}.guide-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:18px;margin:28px 0}.guide-link{display:block;background:#fff;border:1px solid #d8e5e5;border-radius:18px;padding:22px;text-decoration:none;box-shadow:0 5px 18px #12395b0c}.guide-link:hover,.guide-link:focus-visible{border-color:var(--teal)}.guide-link h2{font-size:1.18rem;margin:0 0 8px;color:var(--navy)}.guide-link p{margin:0}.reading{max-width:830px}.reading h2{color:var(--navy);line-height:1.3;margin-top:1.8em}.reading li{margin:.55em 0}.reading p{margin:.8em 0}.reading ul,.reading ol{padding-left:1.5em}.example-mail{background:#fff;border:1px solid #d7e3e4;border-radius:14px;padding:20px;margin:20px 0}.example-mail .meta{font-size:.92rem;border-bottom:1px solid #d7e3e4;padding-bottom:12px}.calm-note{border-left:5px solid #5a9c89;background:#f0f8f4;padding:15px 20px;border-radius:0 12px 12px 0;margin:22px 0}.icon-inline{font-size:1.4em;vertical-align:middle}.contact-options{display:grid;gap:16px;max-width:740px}.contact-options article{background:white;border-radius:14px;padding:18px 22px;border:1px solid #e0e9e9}.contact-options h2{margin:0 0 5px}.contact-options p{margin:0 0 8px}.interior{min-height:55vh}@media(max-width:700px){.guide-links{grid-template-columns:1fr}.reading{font-size:1rem}}


/* V0.2 colour restoration: match the original understated safety-page palette.
   No text, links, functionality or page markup changed. */
.calm-note {
  background: #eef7f3;
  border-left-color: #5a9c89;
}
.guide-link {
  background: #fff;
  border: 1px solid #d7e4e7;
  box-shadow: 0 5px 18px rgba(18,57,91,.045);
}
.guide-link:hover,
.guide-link:focus-visible {
  background: #fff;
  border-color: #5a9c89;
}
@media (min-width: 901px) {
  .guide-links { grid-template-columns: repeat(3, minmax(0,1fr)); }
}


/* V5 original colour restoration, verified against Soilleir_Beta_V5.zip.
   Keep the V0.2 layout and page functionality unchanged. */
.reassurance { background:#fff0d9; border-left:6px solid #e7aa51; border-radius:18px; padding:25px 30px; margin:32px 0 38px; max-width:930px; }
.reassurance h2 { font:900 27px/1.2 'Nunito',sans-serif; color:#12395b; margin:0 0 10px; }
.reassurance p { margin:8px 0 0; max-width:850px; }
.guide-link { background:#e5f3f4; border:0; border-radius:23px; box-shadow:var(--shadow); }
.guide-link:nth-child(3n+2) { background:#e1f2fc; }
.guide-link:nth-child(3n) { background:#f8f0d8; }
.guide-link:hover,.guide-link:focus-visible { border:0; filter:brightness(.98); }
@media(max-width:700px) { .reassurance { padding:22px; } }

/* Safety guidance: reserve red triangles for situations requiring prompt action. */
.reading .urgent-item { list-style:none; position:relative; padding-left:1.75rem; margin-left:-1.5rem; }
.reading .urgent-item::before, .reading .urgent-heading::before { content:"⚠"; color:#b42318; font-family:Arial,sans-serif; font-weight:700; }
.reading .urgent-item::before { position:absolute; left:0; top:0; font-size:1.25rem; }
.reading .urgent-heading { display:flex; align-items:baseline; gap:.65rem; }
.reading .urgent-heading::before { flex:none; font-size:1.35rem; }

/* Urgent-action markers: retain their shape when printed without colour. */
@media print { .urgent-item::before, .reading .urgent-heading::before { color:#111 !important; } }

/* Soilleir 0.6: AI learning pages, using the established visual palette */
.ai-hub-heading{font:900 30px 'Nunito',sans-serif;color:var(--navy);margin:48px 0 6px}.ai-guide-links{margin-top:22px}.ai-guide-links .guide-link{min-height:160px}.ai-card-number{display:block;font-weight:900;color:#0d6580;margin-bottom:8px}.ai-guide-links .guide-link h2{margin:0 0 8px}.reading blockquote{background:#eef6f7;border-left:5px solid #7bb7a2;border-radius:0 14px 14px 0;padding:16px 20px;margin:20px 0;font-weight:600}.reading h3{color:var(--navy);margin-top:1.5em}.ai-references{border-top:1px solid #d5e4e6;margin-top:45px;padding-top:12px}.ai-references h2{font-size:1.35rem}.ai-references li{margin:12px 0}.ai-references a,.reading a{color:#096d90;text-underline-offset:3px}.ai-bottom-nav{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:40px;padding-top:22px;border-top:1px solid #d5e4e6}.ai-bottom-nav a{font-weight:800;color:#096d90}.about-additions{border-top:1px solid #d5e4e6;margin-top:46px;padding-top:16px}.about-additions h2{font:900 27px 'Nunito',sans-serif;color:var(--navy)}

/* Soilleir 0.8: accessible, no-cost read-aloud controls */
.read-aloud{max-width:830px;margin:22px 0 30px;padding:17px 20px;background:#eaf5f3;border-radius:18px;border:1px solid #c8e3dd}.read-aloud-hint{margin:0 0 9px;font-size:1rem}.read-aloud-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.read-aloud button{background:#126d87;color:#fff;border:0;border-radius:24px;padding:10px 17px;font-weight:800;min-height:44px}.read-aloud button:hover{background:#0c526b}.read-aloud-message{font-size:.9rem;color:#31576a}.read-aloud-bar{position:fixed;bottom:14px;left:50%;transform:translateX(-50%);width:min(95vw,760px);z-index:20;background:#fffdf6;border:2px solid #b5d5d5;box-shadow:0 7px 26px #12395b40;border-radius:18px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.read-aloud-bar[hidden]{display:none}.read-aloud-title{font-weight:800;color:#12395b}.read-aloud-buttons{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.read-aloud-buttons label{font-size:.9rem;font-weight:700}.read-aloud-buttons select{min-height:44px;border:1px solid #8caaaa;border-radius:9px;background:white;padding:8px;color:#12395b;font:inherit}.read-aloud-bar button{border-radius:10px}.read-aloud-bar button[data-tts-stop]{background:#435e6b}@media(max-width:620px){.read-aloud-bar{bottom:6px;padding:10px;justify-content:center}.read-aloud-title{width:100%;text-align:center}.read-aloud-buttons{justify-content:center}.read-aloud button{padding:9px 12px}}@media print{.read-aloud{display:none}}

/* v0.9: approachable feedback and help notes */
.guide-feedback,.contact-help-note{margin:28px 0;padding:20px 24px;border-radius:16px;background:#f0f7f5;border:1px solid #d4e6df}
.guide-feedback h2,.contact-help-note h2{margin-top:0}
.guide-feedback a{display:inline-block;font-weight:700;text-underline-offset:3px}
.feedback-note{font-size:.9rem;color:#31596b}
