:root{--sage: #487635;--leaf: #51975E;--teal: #39988B;--teal-deep: #104156;--ink: #263642;--paper: #DFD7CE;--paper-warm: #EAE3DA;--paper-deep: #C9BFB1;--accent: var(--leaf);--accent-deep: var(--sage);--display: "Gloock", "DM Serif Display", Georgia, serif;--body: "Bricolage Grotesque", system-ui, sans-serif}html,body{margin:0;padding:0;background:var(--paper)}body{font-family:var(--body);color:var(--ink);font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}h1,h2,h3{font-family:var(--display);color:var(--teal-deep);margin:0;line-height:1;letter-spacing:-.015em;font-weight:400}p{margin:0 0 1em}a{color:var(--teal-deep);text-decoration:none}strong{font-weight:700}img{max-width:100%}.app{min-height:100vh;display:flex;flex-direction:column}.app main{flex:1}.nav{position:sticky;top:0;z-index:50;background:var(--teal-deep);color:var(--paper)}.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:16px 40px;max-width:1280px;margin:0 auto}.nav-brand{display:flex;align-items:center;gap:14px;color:var(--paper);cursor:pointer}.nav-brand img{height:40px;width:auto}.nav-brand span{font-family:var(--display);font-size:24px}.nav-links{display:flex;gap:6px;align-items:center}.nav-links a{color:var(--paper);padding:8px 16px;font-weight:600;font-size:15px;border-radius:999px;transition:all .2s;cursor:pointer}.nav-links a:hover{background:#ffffff1a}.nav-links a.active{background:var(--accent);color:var(--paper)}.nav-cta{background:var(--paper);color:var(--teal-deep);padding:10px 22px;border-radius:999px;font-weight:700;font-size:14px;transition:all .2s;cursor:pointer}.nav-cta:hover{background:var(--accent);color:var(--paper)}.hero{background:var(--accent);color:var(--paper);position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;max-width:1280px;margin:0 auto;min-height:580px}.hero-left{padding:80px 60px 80px 40px;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:1}.hero-eyebrow{display:inline-flex;align-items:center;gap:10px;background:#0000002e;color:var(--paper);padding:8px 16px;border-radius:999px;font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;align-self:flex-start}.hero h1{font-size:clamp(56px,9vw,116px);color:var(--paper);margin:24px 0 20px}.hero h1 em{font-style:italic;color:var(--teal-deep)}.hero-sub{font-size:21px;max-width:520px;opacity:.95;margin-bottom:32px}.hero-cta{display:flex;gap:14px;flex-wrap:wrap}.hero-right{background:var(--teal-deep);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.hero-bug{width:90%;max-width:520px;color:var(--accent)}.hero-right:before{content:"";position:absolute;width:240px;height:240px;border-radius:50%;background:var(--teal);opacity:.4;top:-40px;right:-60px;pointer-events:none}.hero-right:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;background:var(--sage);opacity:.25;bottom:-120px;left:-120px;pointer-events:none}.hero-photo{width:100%;height:100%;position:relative}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;display:block}.hero-photo-caption{position:absolute;bottom:20px;left:20px;right:20px;display:flex;gap:10px;align-items:center;color:var(--paper);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.hero-photo-caption .dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px #51975e66}.hero-photo-caption .text{background:#104156d9;padding:8px 14px;border-radius:999px;backdrop-filter:blur(6px)}.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 26px;border-radius:14px;font-family:var(--body);font-weight:700;font-size:15px;border:0;cursor:pointer;transition:all .2s ease;text-decoration:none}.btn-primary{background:var(--teal-deep);color:var(--paper)}.btn-primary:hover{background:var(--ink);transform:translateY(-2px)}.btn-cream{background:var(--paper);color:var(--teal-deep)}.btn-cream:hover{background:#fff;transform:translateY(-2px)}.btn-outline{background:transparent;border:2px solid var(--paper);color:var(--paper)}.btn-outline:hover{background:var(--paper);color:var(--teal-deep)}section{padding:88px 40px;position:relative}.container{max-width:1280px;margin:0 auto}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:48px;gap:32px;flex-wrap:wrap}.section-head h2{font-size:clamp(40px,5.5vw,72px);max-width:720px}.section-head .lede{max-width:380px;font-size:17px;opacity:.8}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-deep);margin-bottom:14px}.eyebrow:before{content:"";width:24px;height:2px;background:currentColor;border-radius:2px}.audience-grid{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:220px;gap:16px}.a-tile{border-radius:24px;padding:24px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;cursor:pointer;transition:transform .25s;color:var(--paper);border:0;text-align:left;font-family:var(--body)}.a-tile:hover{transform:translateY(-4px)}.a-tile h3{color:var(--paper);font-size:26px;line-height:1}.a-tile .age{background:#ffffff2e;padding:4px 12px;border-radius:999px;font-weight:700;font-size:11px;letter-spacing:.14em;text-transform:uppercase;align-self:flex-start}.a-tile .bug-art{position:absolute;opacity:.55;pointer-events:none}.a-tile .arrow{position:absolute;bottom:16px;right:16px;width:36px;height:36px;border-radius:50%;background:#0000002e;color:var(--paper);display:flex;align-items:center;justify-content:center;transition:all .2s}.a-tile:hover .arrow{background:var(--paper);color:var(--teal-deep);transform:rotate(-45deg)}.a-tile.t-tod{grid-column:span 2;background:var(--teal)}.a-tile.t-elem{grid-column:span 2;background:var(--sage)}.a-tile.t-ms{grid-column:span 2;background:var(--teal-deep)}.a-tile.t-com{grid-column:span 2;background:var(--leaf)}.a-tile.t-bday{grid-column:span 2;background:#b54a3a}.a-tile.t-lib{grid-column:span 2;background:var(--sage)}.a-tile.t-brn{grid-column:span 2;background:var(--ink)}@media(max-width:900px){.audience-grid{grid-template-columns:repeat(2,1fr)}.a-tile{grid-column:span 1!important}}.stripe{background:var(--ink);color:var(--paper);padding:56px 40px}.stripe-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;max-width:1280px;margin:0 auto}.stat .num{font-family:var(--display);font-size:clamp(48px,6vw,72px);color:var(--accent);line-height:1}.stat .label{font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase;opacity:.85;margin-top:6px}.ambassadors{background:var(--paper-warm);border-radius:32px;padding:56px 48px;position:relative}.amb-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center}.amb-card{background:var(--teal-deep);color:var(--paper);border-radius:24px;padding:12px;position:relative}.amb-portrait{background:var(--accent);border-radius:16px;aspect-ratio:1;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;color:var(--paper)}.amb-portrait:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 30%,rgba(255,255,255,.18),transparent 55%)}.amb-portrait-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.amb-thumb-img{width:100%;height:100%;object-fit:cover;border-radius:8px;display:block}.amb-meta{display:flex;justify-content:space-between;align-items:center;padding:14px 14px 8px;font-weight:700;font-size:12px;letter-spacing:.14em;text-transform:uppercase}.amb-info .tag{display:inline-block;background:var(--accent-deep);color:var(--paper);padding:6px 14px;border-radius:999px;font-weight:700;font-size:11px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:12px}.amb-info h3{font-size:clamp(36px,4.5vw,56px);margin-bottom:6px}.amb-info .latin{font-family:var(--display);font-style:italic;color:var(--ink);opacity:.6;margin-bottom:18px;font-size:19px}.amb-info p{font-size:18px}.amb-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px}.amb-stat{background:var(--paper);border-radius:16px;padding:14px}.amb-stat label{display:block;font-weight:700;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-deep);margin-bottom:4px}.amb-stat span{font-family:var(--display);font-size:17px;color:var(--teal-deep)}.amb-controls{display:flex;gap:12px;align-items:center;margin-top:28px;flex-wrap:wrap}.amb-controls button{width:48px;height:48px;border-radius:50%;border:0;background:var(--teal-deep);color:var(--paper);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;font-size:18px}.amb-controls button:hover{background:var(--accent-deep)}.amb-counter{font-weight:700;font-size:14px;letter-spacing:.1em;color:var(--ink);opacity:.7;margin-left:4px}.amb-thumbs{display:flex;gap:8px;margin-left:auto;flex-wrap:wrap}.amb-thumbs button{width:44px;height:44px;border-radius:12px;border:2px solid transparent;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;background:var(--paper);transition:all .2s}.amb-thumbs button.active{border-color:var(--teal-deep);background:var(--teal-deep)}.about-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:56px;align-items:stretch}.about-photo{border-radius:24px;aspect-ratio:4/5;background:var(--teal);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.about-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 25%}.about-photo .placeholder{font-family:var(--display);font-style:italic;font-size:22px;color:var(--paper);opacity:.85;text-align:center;padding:24px}.about-text h2{font-size:clamp(48px,6vw,80px);margin-bottom:12px}.about-text .role{display:inline-block;background:var(--accent-deep);color:var(--paper);padding:6px 14px;border-radius:999px;font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:20px}.about-text p{font-size:18px}.about-text blockquote{font-family:var(--display);font-style:italic;font-size:26px;line-height:1.3;color:var(--teal-deep);background:var(--paper-warm);border-radius:20px;padding:28px;margin:24px 0;border-left:6px solid var(--accent)}.programs-banner{background:var(--teal);color:var(--paper);padding:88px 40px;position:relative;overflow:hidden}.programs-banner h1{color:var(--paper);font-size:clamp(64px,9vw,120px)}.programs-banner .sub{font-size:21px;max-width:640px;opacity:.95;margin-top:16px}.programs-banner .float{position:absolute;opacity:.18}.audience-block{margin-bottom:56px}.audience-block .head{display:flex;align-items:baseline;gap:16px;margin-bottom:24px;border-bottom:3px solid var(--ink);padding-bottom:16px}.audience-block .head h2{font-size:clamp(36px,4vw,52px)}.audience-block .head .badge{background:var(--accent-deep);color:var(--paper);padding:6px 14px;border-radius:999px;font-weight:700;font-size:11px;letter-spacing:.16em;text-transform:uppercase}.program-row{display:grid;grid-template-columns:80px 1fr 220px 160px;gap:24px;align-items:center;padding:24px;border-radius:20px;background:var(--paper-warm);border:2px solid transparent;margin-bottom:12px;transition:all .2s}.program-row:hover{border-color:var(--teal);transform:translate(4px)}.program-row .icon-tile{width:80px;height:80px;border-radius:18px;background:var(--accent);color:var(--paper);display:flex;align-items:center;justify-content:center}.program-row.t2 .icon-tile{background:var(--teal)}.program-row.t3 .icon-tile{background:var(--teal-deep)}.program-row.t4 .icon-tile{background:#b54a3a}.program-row h3{font-size:26px;margin-bottom:4px}.program-row .duration{font-weight:700;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-deep)}.program-row .desc{font-size:15px;opacity:.82;margin:6px 0 0}.program-row .price-cell{font-family:var(--display);font-size:32px;color:var(--teal-deep)}.program-row .price-cell small{font-family:var(--body);font-weight:700;font-size:11px;letter-spacing:.1em;text-transform:uppercase;opacity:.7;display:block}.program-row .add-on{display:block;font-size:11px;font-weight:600;opacity:.7;margin-top:8px;letter-spacing:.04em}.program-row .book-btn{background:var(--teal-deep);color:var(--paper);padding:12px 18px;border-radius:12px;font-weight:700;font-size:13px;text-align:center;transition:all .2s}.program-row .book-btn:hover{background:var(--accent-deep)}.stations{background:var(--paper-warm);border-radius:20px;padding:28px;margin-bottom:24px;display:grid;grid-template-columns:80px 1fr;gap:24px;align-items:start}.stations .icon-tile{width:80px;height:80px;border-radius:18px;background:#b54a3a;color:var(--paper);display:flex;align-items:center;justify-content:center}.stations h3{font-size:26px;margin-bottom:4px}.stations .duration{font-weight:700;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-deep);margin-bottom:12px;display:block}.stations .intro{font-size:15px;opacity:.82;margin:8px 0 16px}.stations ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:8px 16px}.stations ul li{font-size:14px;padding-left:18px;position:relative}.stations ul li:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);position:absolute;left:4px;top:8px}.stations ul li strong{color:var(--teal-deep)}.topics-chips{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 0}.topics-chips .chip{background:var(--paper);color:var(--teal-deep);font-size:12px;font-weight:700;padding:6px 12px;border-radius:999px;border:1.5px solid var(--paper-deep)}.policy-strip{background:var(--paper-warm);border-radius:24px;padding:32px;margin-top:32px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.policy{display:flex;flex-direction:column;gap:6px}.policy .label{font-weight:700;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-deep)}.policy h4{font-family:var(--display);color:var(--teal-deep);font-size:22px;margin:4px 0;line-height:1.1}.policy p{font-size:14px;opacity:.85;margin:0}.contact-split{display:grid;grid-template-columns:1fr 1fr;gap:0;border-radius:32px;overflow:hidden}.contact-info{background:var(--accent);color:var(--paper);padding:56px;position:relative;overflow:hidden}.contact-info h2{color:var(--paper);font-size:clamp(40px,5vw,64px);margin-bottom:16px}.contact-info p{opacity:.95;font-size:18px}.info-line{display:flex;gap:16px;align-items:flex-start;margin-bottom:18px}.info-line .ic{width:44px;height:44px;border-radius:12px;background:#0000002e;color:var(--paper);display:flex;align-items:center;justify-content:center;flex-shrink:0}.info-line strong{display:block;font-size:11px;letter-spacing:.16em;text-transform:uppercase;opacity:.9;margin-bottom:2px;font-weight:700}.info-line div{line-height:1.45}.info-line a{color:var(--paper)}.contact-form{background:var(--paper-warm);padding:56px}.contact-form h3{color:var(--teal-deep);font-size:clamp(28px,3vw,36px);margin-bottom:24px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field label{font-weight:700;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-deep)}.field input,.field textarea,.field select{font-family:var(--body);font-size:15px;background:var(--paper);border:2px solid var(--paper-deep);color:var(--ink);border-radius:12px;padding:12px 14px;outline:none;transition:border-color .2s}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--teal)}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.form-status{margin-top:16px;font-weight:600}.form-status.error{color:#b54a3a}.contact-confirm{background:var(--paper);border:2px solid var(--accent);border-radius:16px;padding:28px;margin-top:8px}.contact-confirm h3{margin-bottom:8px}.footer{background:var(--teal-deep);color:var(--paper);padding:64px 40px 28px}.footer-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px}.footer h4{font-family:var(--display);color:var(--paper);font-size:18px;margin-bottom:14px}.footer a{color:var(--paper);display:block;padding:4px 0;font-size:14px;opacity:.85;cursor:pointer}.footer a:hover{opacity:1;color:var(--accent)}.footer-bottom{max-width:1280px;margin:32px auto 0;padding-top:20px;border-top:1px solid rgba(223,215,206,.2);display:flex;justify-content:space-between;font-size:12px;opacity:.7;flex-wrap:wrap;gap:12px}.footer-brand{display:flex;align-items:center;gap:14px;color:var(--paper);margin-bottom:8px}.footer-brand img{height:36px;width:auto}.footer-brand span{font-family:var(--display);font-size:24px}.footer-tagline{font-family:var(--display);font-style:italic;font-size:22px;color:var(--accent);margin-top:12px}.notfound{text-align:center;padding:120px 40px}.notfound h1{font-size:clamp(64px,12vw,140px)}.notfound p{font-size:19px;opacity:.8;margin:16px 0 28px}@media(max-width:900px){.hero-grid,.about-grid,.amb-grid,.contact-split{grid-template-columns:1fr}.stripe-grid{grid-template-columns:repeat(2,1fr)}.program-row{grid-template-columns:1fr;gap:12px}.footer-inner{grid-template-columns:1fr 1fr}.nav-inner{padding:12px 20px}.nav-links{display:none}section{padding:56px 20px}.ambassadors{padding:32px 20px}.contact-info,.contact-form{padding:32px}.stations,.stations ul{grid-template-columns:1fr}}
