:root{--paper:#fbfcfd;--white:#fff;--soft:#eef4f6;--ink:#18314b;--muted:#4e6071;--action:#126167;--hover:#0b484e;--line:#d1dce2;--error:#8c2b20;--radius:14px}
*{box-sizing:border-box}html{font-size:18px;-webkit-text-size-adjust:100%;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:18px;line-height:1.65}a{color:var(--action);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--ink);outline-offset:5px}img,video{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.15;letter-spacing:-.035em}h1{font-size:clamp(2.25rem,4.3vw,3.9rem);font-weight:750;margin-bottom:24px}h2{font-size:clamp(1.8rem,3vw,2.65rem);margin-bottom:20px}h3{font-size:1.35rem;letter-spacing:-.02em;margin-bottom:12px}p+p{margin-top:18px}p{max-width:68ch}sup{font-size:.7em}ul,ol{padding-left:24px}.wrap{width:min(1180px,100% - 48px);margin-inline:auto}.narrow{max-width:820px}.person-name{font-family:Georgia,'Times New Roman',serif}.eyebrow{font-size:.76rem;font-weight:700;line-height:1.5;text-transform:uppercase;letter-spacing:.12em;color:var(--action);margin-bottom:18px}.small,.field-help{font-size:.88rem;color:var(--muted);line-height:1.6}.lead{font-size:clamp(1.15rem,2vw,1.35rem);line-height:1.5}.dot{display:inline-block;width:8px;height:8px;background:var(--action);border-radius:100%;margin-right:7px}.skip-link{position:absolute;top:0;left:16px;transform:translateY(-150%);padding:12px 18px;z-index:10;background:var(--ink);color:#fff}.skip-link:focus{transform:translateY(10px)}.site-header{background:var(--white);border-bottom:1px solid var(--line)}.header-main{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:20px 12px}.wordmark{display:inline-flex;flex-direction:column;justify-content:center;min-height:44px;font-weight:750;font-size:1.45rem;line-height:1.2;letter-spacing:-.045em;text-decoration:none;color:var(--ink)}.wordmark span{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:7px;font-weight:600}.header-actions{display:flex;align-items:center;gap:24px}.phone{display:inline-flex;align-items:center;min-height:44px;font-weight:700;white-space:nowrap}.header-actions .phone{text-decoration:none;font-size:1rem}.primary-nav{display:flex;gap:28px}.primary-nav a{display:flex;align-items:center;min-height:48px;font-size:.9rem;text-decoration:none;color:var(--muted);border-bottom:3px solid transparent}.primary-nav a[aria-current=page]{color:var(--ink);border-bottom-color:var(--action);font-weight:700}.button{min-height:56px;padding:14px 23px;display:inline-flex;align-items:center;justify-content:center;gap:28px;border:2px solid var(--action);border-radius:6px;background:var(--action);color:var(--white);font-weight:700;font-size:1rem;line-height:1.3;text-align:center;text-decoration:none;cursor:pointer}.button:hover{background:var(--hover);border-color:var(--hover)}.button-small{min-height:46px;padding:11px 18px;font-size:.88rem}.button-outline{color:var(--action);background:transparent}.button-outline:hover{background:var(--soft);color:var(--ink)}.button:disabled{opacity:.65;cursor:wait}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px;margin-block:28px 18px}.text-link{display:inline-flex;align-items:center;gap:15px;min-height:44px;font-size:.95rem;font-weight:700}.hero{padding:64px 0}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center}.hero-detail{margin-top:22px;color:var(--muted);font-size:1rem}.hero-copy>.small{margin-top:18px}.video-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 12px 40px #20352f08}.video-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 22px}.video-heading .eyebrow{margin:0;font-size:.68rem}.time-label{font-size:.78rem;border:1px solid var(--line);border-radius:30px;padding:2px 10px;white-space:nowrap}.video-card video{width:100%;aspect-ratio:16/9;background:var(--soft)}.video-note{padding:20px 24px}.video-note>p{font-size:.9rem;line-height:1.6}.video-note strong{font-size:1.2rem}.transcript{margin-top:12px;font-size:.87rem}.transcript summary{min-height:44px;display:list-item;cursor:pointer;padding-block:9px;color:var(--action);font-weight:700}.transcript p{margin-top:14px;color:var(--muted)}.facts-band{border-block:1px solid var(--line);background:var(--white)}.facts{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;padding-block:22px;padding-left:0;gap:30px}.facts li{padding-left:24px;border-left:2px solid var(--line)}.facts strong,.facts span{display:block}.facts strong{font-size:1rem}.facts span{font-size:.9rem;color:var(--muted)}.section{padding:76px 0}.soft{background:var(--soft)}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px}.audience-list p{padding-bottom:20px;border-bottom:1px solid var(--line)}.audience-list p:last-child{border:0;padding-bottom:0}.audience-list strong{font-size:1.06rem}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:30px}.section-heading h2{margin-bottom:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:var(--white);border:1px solid var(--line);padding:30px;border-radius:var(--radius)}.number{display:inline-flex;color:var(--action);font-size:.8rem;letter-spacing:.08em;font-weight:700;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;margin-bottom:26px}.card p{color:var(--muted);font-size:1rem}.card p strong{color:var(--ink)}.rule{border-top:1px solid #bcc9bc;margin-top:44px;padding-top:34px}.rule .eyebrow{margin-bottom:10px}.rule>p:nth-child(2){font-family:Georgia,serif;font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.3;margin-top:0;max-width:38ch}.rule>span{display:block;color:var(--muted);font-size:1rem;margin-top:16px}.steps{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;padding:14px 0 0;gap:36px}.steps p{font-size:1rem;color:var(--muted)}.faq details{border-bottom:1px solid #bcc9bc}.faq details:first-child{border-top:1px solid #bcc9bc}.faq summary{min-height:64px;padding:19px 32px 19px 0;font-weight:700;line-height:1.45;cursor:pointer;position:relative;list-style:none;font-size:1.02rem}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:'+';position:absolute;right:6px;top:16px;font-size:1.35rem;font-weight:400}.faq details[open] summary::after{content:'−'}.faq details p{font-size:1rem;padding-bottom:22px;color:var(--muted)}.game-panel{display:flex;gap:40px;align-items:center;border:1px solid var(--line);border-radius:var(--radius);padding:40px}.game-panel h2{margin-bottom:12px}.game-panel .text-link{margin-top:18px}.game-mark{flex:none;width:146px;height:170px;background:var(--soft);border-radius:12px;color:var(--action);font-family:Georgia,serif;font-size:4.3rem;line-height:1;text-align:center;padding:18px}.game-mark span{display:block;font-family:Arial,sans-serif;font-size:1rem;font-weight:700;line-height:1.3;margin-top:8px}.closing{padding:58px 0;background:#e7eee5;border-block:1px solid var(--line)}.closing-inner{display:grid;grid-template-columns:1.5fr 1fr;gap:70px;align-items:center}.closing .eyebrow{margin-bottom:12px}.closing h2{max-width:19ch}.closing p{font-size:1rem}.closing-actions{text-align:center}.closing-actions .button{width:100%}.closing-actions p{margin-top:12px}.site-footer{padding:42px 0 24px;background:var(--white)}.footer-top{display:flex;justify-content:space-between;gap:36px;padding-bottom:26px}.footer-top nav{display:flex;flex-wrap:wrap;gap:0 26px;max-width:650px}.footer-top nav a{display:inline-flex;align-items:center;min-height:44px;font-size:.82rem}.legal{border-top:1px solid var(--line);padding-top:18px;font-size:.78rem;max-width:none;color:var(--muted)}.legal .phone{font-size:.78rem}.site-footer>.wrap>.small{margin-top:6px;font-size:.76rem}.page-intro{padding:65px 0 60px;border-bottom:1px solid var(--line)}.page-intro .lead{margin-bottom:25px}.page-intro .small{margin-top:14px}.page-intro .button{margin-top:10px}.pill-row{display:flex;flex-wrap:wrap;gap:10px;margin-block:24px}.pill-row span{font-size:.85rem;background:var(--soft);border:1px solid var(--line);padding:6px 12px;border-radius:30px}.topic-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.topic-grid h2{font-size:1.55rem;letter-spacing:-.02em}.rule-list{margin:0;padding-left:30px}.rule-list li{padding-left:12px;margin-bottom:28px}.rule-list li::marker{color:var(--action);font-weight:700}.rule-list li:last-child{margin-bottom:0}.rule-list h3{font-size:1.15rem}.rule-list p{color:var(--muted);font-size:1rem}.about-grid{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:70px}.portrait{max-width:340px;justify-self:center}.portrait img{border-radius:var(--radius);border:1px solid var(--line);background:white}.portrait figcaption{font-size:.85rem;margin-top:12px;color:var(--muted)}.about-grid .button{margin-top:25px}.block-link{display:flex;margin-top:20px;width:fit-content}.compact{padding-bottom:24px;border:0}.booking-section{padding-top:14px}.booking-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:50px;align-items:start}.form-panel{padding:32px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.form-panel h2{font-size:1.6rem}.preview-note{font-size:.9rem;border-left:3px solid var(--action);padding:10px 0 10px 16px;background:var(--soft);margin:20px 0}.preview-note a{display:inline-flex;min-height:44px;align-items:center}.field{margin-top:22px;min-width:0}.field label{display:block;font-weight:700;font-size:.95rem;margin-bottom:8px}.field label span{font-weight:400;color:var(--muted);font-size:.8rem}.field-help{display:block;margin-top:7px;font-size:.78rem}input,select,textarea{width:100%;min-width:0;max-width:100%;border:1px solid #728077;border-radius:5px;background:var(--white);color:var(--ink);padding:11px 12px;min-height:50px;font-size:1rem}input::placeholder,textarea::placeholder{color:#657167;opacity:1}textarea{resize:vertical;min-height:140px}input:focus,select:focus,textarea:focus{outline:3px solid var(--action);outline-offset:2px}input[aria-invalid=true]{border:2px solid var(--error)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}#privacy-note{margin:25px 0 22px}.submit-button{width:100%}.status{background:var(--soft);border:1px solid var(--action);border-radius:6px;padding:16px;font-size:.95rem;margin-top:22px}.status[data-state=error]{border-color:var(--error);background:#fff7f4;color:var(--error)}.status a{display:inline-flex;min-height:44px;align-items:center;color:inherit;font-weight:700}.status:empty{display:none}.booking-aside{padding-top:14px}.check-list{list-style:none;padding:0;margin:25px 0 30px}.check-list li{position:relative;padding:12px 0 12px 28px;border-bottom:1px solid var(--line);font-size:1rem}.check-list li::before{content:'✓';position:absolute;left:0;color:var(--action);font-weight:700}.call-card{padding:26px;background:var(--soft);border-radius:var(--radius)}.call-card p{font-size:.95rem}.call-card .button{margin-top:24px;width:100%}.next-panel{padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);margin-block:28px}.next-panel h2{font-size:1.55rem}[hidden]{display:none!important}
@media(min-width:1400px){.hero{padding-block:76px}}
@media(max-width:960px){.hero-grid{gap:30px;grid-template-columns:1.1fr 1fr}.hero h1{font-size:2.7rem}.split{gap:38px}.cards{gap:14px}.card{padding:23px}.booking-grid{grid-template-columns:1.6fr 1fr;gap:25px}.form-row{grid-template-columns:1fr;gap:0}.closing-inner{gap:35px}.footer-top{flex-direction:column;gap:20px}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}body{font-size:18px}.header-main{padding-block:16px 9px;gap:14px}.wordmark{font-size:1.18rem}.wordmark span{font-size:.6rem;letter-spacing:.06em}.header-actions{gap:10px;flex-direction:column;align-items:flex-end}.header-actions .phone{font-size:.88rem;min-height:44px}.header-actions .button{display:inline-flex;min-height:44px;padding:9px 15px}.primary-nav{gap:26px}.primary-nav a{font-size:.84rem}.hero{padding:34px 0}.hero-grid{grid-template-columns:1fr;gap:26px}.hero h1{font-size:clamp(2.15rem,7.4vw,3.3rem);max-width:17ch;margin-bottom:18px}.hero .lead{font-size:1.1rem}.hero-detail{margin-top:16px}.hero-copy>.eyebrow{font-size:.67rem;margin-bottom:14px}.hero-copy>.small{font-size:.82rem}.actions{margin-block:22px 14px;gap:8px 22px}.video-card{max-width:600px}.video-note{padding:16px 20px}.facts{grid-template-columns:1fr;gap:15px;margin-block:0;padding-block:24px}.facts li{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-left:14px}.facts strong{font-size:.9rem}.facts span{font-size:.8rem}.section{padding:48px 0}.split,.cards,.steps,.topic-grid,.booking-grid,.closing-inner,.about-grid{grid-template-columns:1fr;gap:26px}.section-heading{display:block;margin-bottom:22px}.section-heading .text-link{margin-top:14px}.card{padding:26px}.card .number{margin-bottom:20px}.steps{gap:26px}.steps li{border-top:1px solid var(--line);padding-top:20px}.steps .number{margin-bottom:16px}.game-panel{padding:26px;gap:22px;align-items:flex-start}.game-mark{display:none}.closing{padding:42px 0}.closing h2{max-width:none}.closing-actions{text-align:left}.closing-actions .button{width:auto}.page-intro{padding:38px 0}.page-intro h1{font-size:2.5rem}.portrait{justify-self:start;width:220px}.about-grid{gap:30px}.form-panel{padding:22px}.booking-aside{padding-top:0}.compact{padding-bottom:20px}.booking-section{padding-top:0}.footer-top nav{column-gap:22px}.footer-top nav a{font-size:.8rem}.legal{line-height:1.8}.rule-list{padding-left:24px}}
@media(max-width:380px){.wrap{width:calc(100% - 28px)}.primary-nav{gap:22px}.facts li{display:block}.hero h1{font-size:2.15rem}.header-main{gap:8px}.header-actions .phone{font-size:.8rem}.wordmark{font-size:1.1rem}.form-panel{padding:18px}.page-intro h1{font-size:2.2rem}.hero .actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.site-header,.site-footer,.closing,.button,video,.skip-link{display:none}body{background:white;color:black;font-size:12pt}.section,.page-intro,.hero{padding:16px 0}.wrap{width:100%}.cards,.topic-grid,.hero-grid,.split{display:block}.card{break-inside:avoid;margin-block:12px}.video-card{display:none}a{color:black}.person-name{font-family:Georgia,serif}}
/* Round 2: warm light, navy structure, gold detail, one teal action color. */
.hero{background:radial-gradient(ellipse at 82% 20%,#dcecee 0,transparent 57%),linear-gradient(135deg,#fffaf0,#f6fafc 65%);overflow:hidden}
.hero h1{font-size:clamp(2.25rem,4.1vw,3.45rem);max-width:17ch}
.hero-grid{grid-template-columns:1.08fr 1fr;gap:44px}
.wordmark{letter-spacing:-.04em;font-size:1.55rem}
.wordmark span{font-size:.82rem;letter-spacing:0;text-transform:none;line-height:1.4}
.primary-nav a,.header-actions .phone,.button-small{font-size:1rem}
.small,.field-help,.field label,.field label span,.preview-note,.status,.transcript,.video-note>p,.portrait figcaption,.call-card p,.pill-row span,.facts span,.footer-top nav a,.legal,.legal .phone,.site-footer>.wrap>.small,.hero-copy>.small{font-size:1rem}
.eyebrow{color:var(--action);font-size:.78rem}.number{color:var(--action)}
.button{border-radius:9px;transition:background-color .2s,box-shadow .2s,transform .2s}
.button:hover{box-shadow:0 5px 18px #18314b1a;transform:translateY(-2px)}
.button:active{transform:translateY(0)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #18314b;outline-offset:5px}
.card,.family-card{box-shadow:0 6px 26px #18314b06;border-top:3px solid #b48b3a}
.card{transition:box-shadow .25s}.card:hover{box-shadow:0 12px 30px #18314b10}
.page-intro{background:linear-gradient(125deg,#fffaf0,#f1f7f9)}
.closing{background:linear-gradient(110deg,#eaf3f5,#fff5df);border-block:1px solid var(--line)}
.closing h2{max-width:17ch;color:var(--ink)}.closing p,.closing .phone{color:var(--ink)}
.closing .eyebrow{color:var(--action)}
.together{background:linear-gradient(140deg,#f7fafb,#fff9ec)}
.family-card{padding:32px;border:1px solid var(--line);border-top:3px solid #b48b3a;border-radius:var(--radius);background:#fff}
.family-card .number{display:block;font-size:1rem;margin-bottom:20px}.family-card .button{margin-top:25px}
.door-demo{background:#ffffffc9;border:1px solid #c4d8df;border-radius:22px;box-shadow:0 22px 65px #18314b12;overflow:hidden}
.demo-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:20px 24px 0}.demo-heading .eyebrow{margin:0;letter-spacing:.08em;font-size:.72rem}
.demo-label{font-size:.78rem;color:var(--muted)}
.door-stage{position:relative;width:100%;aspect-ratio:600/460;isolation:isolate}
.door-fallback,.door-canvas{position:absolute;inset:0;width:100%;height:100%}.door-canvas canvas{display:block;width:100%;height:100%}
.door-demo[data-render="webgl"] .door-fallback{visibility:hidden}
.verified-mark{position:absolute;right:23%;bottom:18%;display:grid;place-items:center;width:56px;height:56px;background:#17653e;border:4px solid white;border-radius:50%;color:white;font-size:1.7rem;font-weight:700;opacity:0;transform:scale(.8);transition:opacity .7s,transform .7s;box-shadow:0 4px 18px #18314b20}
.door-demo[data-state="verified"] .verified-mark{opacity:1;transform:scale(1)}
.demo-copy{padding:0 24px 24px}.demo-status{font-weight:700;font-size:1.1rem;min-height:3.3em;line-height:1.5}.demo-help{font-size:1rem;color:var(--muted);margin-top:8px}.verify-button{width:100%;margin-top:18px;gap:0;padding-inline:12px}.demo-caption{font-size:1rem;color:var(--muted);margin-top:14px;line-height:1.5}
.rule{border-left-color:#b48b3a;background:#fff}.rule p{color:var(--ink)}
.revealed{animation:section-arrive .65s ease-out both}
@keyframes section-arrive{from{transform:translateY(16px);opacity:.6}to{transform:none;opacity:1}}
.safe-card{padding:38px;border:2px solid var(--ink);border-radius:12px;background:white}.print-brand{font-size:1.35rem;font-weight:700;margin-bottom:24px}.print-brand span{display:block;font-size:1rem;font-weight:400}.safe-card h2{font-size:1.8rem}.safe-card h3{font-size:1.1rem;margin-top:25px}.safe-card li{margin-bottom:10px}.card-rule{font-weight:700;color:var(--action);font-size:1.25rem}.write-line{display:flex;align-items:baseline;gap:8px;margin-top:25px;flex-wrap:wrap}.write-line span{flex:1;min-width:70px;border-bottom:1px solid var(--ink);height:1.8em}.card-theme{font-weight:700;margin-top:25px}.card-source{font-size:1rem;margin-top:12px}.print-tools .button{margin-top:20px}
@media(max-width:960px){.hero-grid{gap:25px}.demo-heading{flex-wrap:wrap}.demo-copy{padding-inline:20px}}
@media(max-width:760px){.header-main{flex-wrap:wrap;gap:12px}.wordmark{font-size:1.45rem}.header-actions{flex-direction:row;justify-content:space-between;width:100%;align-items:center;gap:12px}.header-actions .phone{font-size:1rem}.header-actions .button{font-size:1rem}.wordmark span{font-size:.9rem;letter-spacing:0}.primary-nav{gap:24px}.primary-nav a{font-size:1rem}.hero-grid{grid-template-columns:1fr}.hero h1{font-size:clamp(2.15rem,7.3vw,3.1rem)}.hero-copy>.small{font-size:1rem}.hero{padding:36px 0}.facts strong,.facts span{font-size:1rem}.facts li{display:block}.facts li span{margin-top:4px}.family-card{padding:24px}.footer-top nav a,.legal,.legal .phone{font-size:1rem}.safe-card{padding:20px}.closing h2{max-width:none}.door-demo{max-width:560px}.demo-status{min-height:3.3em}.site-footer .wordmark{font-size:1.4rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.button:hover{transform:none}}
@media print{
 @page{size:auto;margin:12mm}
 .printable-card .site-header,.printable-card .print-tools,.printable-card .site-footer,.printable-card .closing,.printable-card .skip-link{display:none!important}
 .printable-card{font-size:12pt;line-height:1.35;background:#fff;color:#000}
 .printable-card .card-section{padding:0}.printable-card .wrap{width:100%;max-width:none}.safe-card{padding:6mm;border:1pt solid #18314b;break-inside:avoid}
 .safe-card p,.safe-card li,.safe-card .card-source,.safe-card .print-brand span{font-size:12pt;line-height:1.35}.safe-card h2{font-size:21pt;margin-bottom:10pt}.safe-card h3{font-size:13pt;margin:12pt 0 5pt}.safe-card p+p{margin-top:9pt}.safe-card ol{margin:10pt 0;padding-left:20pt}.safe-card li{margin-bottom:5pt}.safe-card .print-brand{font-size:18pt;margin-bottom:14pt}.safe-card .write-line{margin-top:12pt}.safe-card .card-theme{margin-top:14pt}.safe-card .card-rule{font-size:14pt}.printable-card .safe-card{box-shadow:none}
}
