/* Quiet warmth, with a bolder rhythm. */
:root{--qb-ink:#203e3f;--qb-teal:#2A4D4E;--qb-linen:#FAF9F6;--qb-yellow:#ffe29e;--qb-sage:#D4E8D6}
body{background:var(--qb-linen);-webkit-font-smoothing:antialiased}
header{border-bottom-color:#2a4d4e1c;background:#faf9f6f5;backdrop-filter:blur(12px)}
.nav{min-height:88px}.brand{letter-spacing:-.035em}.brand small{letter-spacing:.15em}
nav a:not(.btn){font-size:13px}nav .btn{border-radius:3px;padding:11px 19px}
section{scroll-margin-top:88px}.btn{transition:background .2s,color .2s,transform .2s}.btn:hover{transform:translateY(-2px)}
.read-more{border-top:1px solid #2a4d4e38;border-bottom:0;padding:17px 0;margin:22px 0 0;text-align:left}
.read-more summary{font:600 14px/1.5 "Avenir Next","Segoe UI",Arial,sans-serif;letter-spacing:.01em;padding-right:26px;cursor:pointer;list-style:none;position:relative}
.read-more summary::-webkit-details-marker{display:none}.read-more summary:after{content:"+";position:absolute;right:2px;top:0;font-size:20px;color:inherit;font-weight:400}
.read-more[open]>summary:after{content:"−"}.read-more-content{padding-top:20px}.read-more-content p:last-child{margin-bottom:0}
/* HOME: one clear thought per section. */
.redesign-home .wrap{max-width:1440px;padding-inline:clamp(24px,6vw,96px)}
.redesign-home #main>.wrap:first-child{max-width:none;padding:0;background:var(--qb-teal)}
.redesign-home .hero.hero-invitation{max-width:1600px;margin:auto;min-height:720px;grid-template-columns:minmax(0,1.16fr) minmax(0,1fr);gap:0;padding:0;align-items:stretch}
.redesign-home .hero.hero-invitation:before{display:none}
.redesign-home .hero.hero-invitation .invitation-copy{padding:70px clamp(28px,5.3vw,86px) 32px;justify-content:center;align-items:flex-start}
.redesign-home .hero.hero-invitation .eyebrow{margin:0 0 29px;font-size:10px;letter-spacing:.18em;color:#d4e8d6}
.redesign-home .hero.hero-invitation h1{font-family:"Iowan Old Style","Palatino Linotype",Georgia,serif;font-size:clamp(55px,5.6vw,88px);font-weight:400;line-height:.98;letter-spacing:-.055em;text-wrap:initial;margin:0;max-width:none}
.redesign-home .hero.hero-invitation h1 em{font-family:"Segoe Print","Bradley Hand",cursive;font-size:clamp(24px,3.05vw,47px);line-height:1.3;letter-spacing:-.055em;white-space:nowrap;margin:24px 0 0;transform:rotate(-1.5deg);color:var(--qb-yellow)}
.redesign-home .hero.hero-invitation .invitation-lead{font-size:19px;line-height:1.65;max-width:390px;margin:29px 0 0;color:#f0f2e9}
.redesign-home .hero.hero-invitation .actions{margin:29px 0 0;gap:17px 25px}
.redesign-home .hero.hero-invitation .invitation-primary{background:var(--qb-yellow);border-color:var(--qb-yellow);color:var(--qb-ink);padding:15px 27px;border-radius:3px;box-shadow:none;font-size:15px;min-width:150px}
.redesign-home .hero.hero-invitation .invitation-primary:hover{background:#ffebb9;border-color:#ffebb9}
.redesign-home .hero.hero-invitation .invitation-secondary{font-size:13px;line-height:1.6;text-underline-offset:5px}
.redesign-home .hero.hero-invitation .invitation-reassurance{font-size:12px;margin:19px 0 33px;color:#d4e8d6}
.redesign-home .hero.hero-invitation .invitation-facts{margin-top:auto;padding-top:19px;font-size:10px;line-height:1.6;gap:12px;text-align:left;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #d4e8d640}
.redesign-home .hero.hero-invitation .invitation-room{border-radius:0;box-shadow:none;min-height:720px;background:#e1d3bd;overflow:visible}
.redesign-home .hero.hero-invitation .invitation-room>img{border-radius:0;object-position:50% 48%;height:100%;filter:saturate(.88)}
.redesign-home .hero.hero-invitation .invitation-caption{left:34px;right:34px;bottom:30px;padding:21px 25px;background:#faf9f6f2;text-align:left;transform:none;box-shadow:none;border-radius:2px}
.redesign-home .hero.hero-invitation .invitation-caption span{font:36px/1.1 "Veronica Handwritten",Caveat,cursive;color:var(--qb-ink)}
.redesign-home .hero.hero-invitation .invitation-caption small{font-size:11px;letter-spacing:.04em;display:block;margin-top:8px}
.redesign-home .hero.hero-invitation .invitation-photo-note{left:-23px;right:auto;top:40px;background:var(--qb-yellow);padding:13px 20px;font-size:24px;transform:rotate(-5deg);box-shadow:none;z-index:2}
.redesign-home .band{margin:0 auto;max-width:1440px;padding:24px clamp(24px,6vw,96px);gap:14px;justify-content:space-between;border-bottom:1px solid #d4e8d633;color:#d4e8d6;text-align:left}
.redesign-home .band span:first-child,.redesign-home .band span:last-child{font-size:11px;color:#d4e8d6}
.redesign-home #main>section{padding:100px 0}
.redesign-home h2{font:400 clamp(40px,4.6vw,66px)/1.05 "Iowan Old Style","Palatino Linotype",Georgia,serif;letter-spacing:-.045em;color:var(--qb-ink)}
.redesign-home h2 em{font-weight:400;color:#3b696a}.redesign-home p{font-size:17px;line-height:1.75}
.redesign-home .section-no,.redesign-home .eyebrow{font:700 10px/1.6 "Avenir Next","Segoe UI",Arial,sans-serif;letter-spacing:.17em;margin-bottom:25px;color:#54736b}
.redesign-home .split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,7vw,100px)}
/* Recognition: the visitor sees themselves before learning the method. */
.redesign-home .recognition{background:#faf9f6}
.redesign-home .recognition>.wrap{display:grid;grid-template-columns:.85fr 1.15fr;column-gap:80px}
.redesign-home .recognition .eyebrow{grid-column:1}
.redesign-home .recognition h2{grid-column:1;grid-row:2;margin:0 0 24px}
.redesign-home .recognition-intro{grid-column:1;grid-row:3;color:#465856;max-width:470px}
.redesign-home .recognition>.wrap>.read-more{grid-column:1;grid-row:4;align-self:start}
.redesign-home .question-grid{grid-column:2;grid-row:1 / span 5;display:flex;flex-direction:column;gap:0;justify-content:center;padding-left:30px;border-left:1px solid #cdd4ce}
.redesign-home .question{padding:25px 0;background:none!important;transform:none!important;border-radius:0;border-top:1px solid #cdd4ce}
.redesign-home .question:first-child{border-top:0;padding-top:0}
.redesign-home .question>p{font:400 clamp(25px,2.6vw,37px)/1.25 "Iowan Old Style","Palatino Linotype",Georgia,serif;letter-spacing:-.035em;margin:0;color:var(--qb-ink)}
.redesign-home .question>p br{display:none}.redesign-home .question .read-more{margin:16px 0 0;padding:0;border:0}.redesign-home .question .read-more-content p{font-size:16px}
/* The method, grounded in an actual place. */
.redesign-home #qhht{background:#f0f1e9}.redesign-home #qhht h2{max-width:440px}
.redesign-home .explore-photo{margin:34px 0 0;max-width:470px}.redesign-home .explore-photo img{width:100%;height:340px;object-fit:cover;object-position:50% 48%;border-radius:160px 160px 3px 3px;display:block}
.redesign-home .explore-photo figcaption{font:29px/1.2 "Veronica Handwritten",Caveat,cursive;color:#3b696a;margin-top:16px}
.redesign-home .section-intro{font:400 28px/1.35 "Iowan Old Style","Palatino Linotype",Georgia,serif;color:var(--qb-ink);margin-bottom:29px}
.redesign-home #qhht .note{font-size:14px;padding:18px 20px;border:0;background:#e3e9dd;border-radius:2px;margin-top:25px}
.redesign-home .read-more .welcome-support{padding:0;width:100%}.redesign-home .read-more .office-story,.redesign-home .read-more .room-visit-grid{display:block;padding:0}.redesign-home .read-more .room-visit{padding:35px 0 0}.redesign-home .read-more .room-visit .wrap{padding:0}.redesign-home .read-more figure{margin:25px 0}.redesign-home .read-more h2{font-size:32px}.redesign-home .read-more .office-story img,.redesign-home .read-more .room-visit img{height:260px}.redesign-home .read-more .room-detail{display:flex;margin-top:24px;gap:20px}.redesign-home .read-more .room-detail img{width:90px;height:110px;object-fit:cover}
/* Three level steps, without competing card treatments. */
.redesign-home #session{background:var(--qb-teal);color:var(--qb-linen)}
.redesign-home #session h2,.redesign-home #session h3,.redesign-home #session .eyebrow{color:var(--qb-linen)}
.redesign-home #session .section-head{align-items:end;margin-bottom:52px}.redesign-home #session .section-head>p{color:#d4e8d6;font-size:16px;max-width:280px}
.redesign-home .steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}
.redesign-home #session .step{display:grid;grid-template-rows:50px 58px auto auto;align-content:start;background:none;border-top:1px solid #d4e8d655;border-radius:0;padding:25px 0 0;transform:none;box-shadow:none}
.redesign-home #session .step .number{font:400 35px/1 "Iowan Old Style",Georgia,serif;color:var(--qb-yellow);margin:0}
.redesign-home #session .step h3{font:400 27px/1.2 "Iowan Old Style",Georgia,serif;letter-spacing:-.025em;margin:0}
.redesign-home #session .step p{color:#e4ebe2;font-size:16px;margin:0 0 18px}
.redesign-home #session .read-more{border-color:#d4e8d644;color:#d4e8d6;margin-top:5px}.redesign-home #session .read-more summary{font-size:13px}
.redesign-home .consent{border-color:#d4e8d644;color:#d4e8d6;text-align:left;font-size:14px;max-width:790px;line-height:1.7;margin-top:45px}
/* A human introduction, with the whole story a click away. */
.redesign-home #veronica{background:#f6eee0}.redesign-home #veronica .split>div:nth-child(2){padding-top:50px}
.redesign-home #veronica blockquote{margin:0 0 30px;padding:0;border:0;font:italic 400 clamp(29px,3vw,43px)/1.35 "Iowan Old Style",Georgia,serif;color:#2a4d4e;letter-spacing:-.035em}
.redesign-home #veronica .credential{font-size:10px;letter-spacing:.12em;color:#54736b}.redesign-home #veronica .small{font-size:13px}
.redesign-home #veronica .btn{border-radius:3px;margin-top:12px}.redesign-home .signature{font:35px/1.3 "Veronica Handwritten",Caveat,cursive}
/* The two ways to inquire. */
.redesign-home .session-options{background:var(--qb-linen)}.redesign-home .session-options .welcome-note{font:28px/1.3 "Veronica Handwritten",Caveat,cursive;color:#3b696a}
.redesign-home .option-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px}.redesign-home .option-grid article{background:none;border:0;border-top:1px solid #bac9be;border-radius:0;padding:30px 0 0;transform:none}.redesign-home .option-grid h3{font-size:32px;letter-spacing:-.03em}.redesign-home .option-note{font:13px/1.6 "Avenir Next","Segoe UI",Arial,sans-serif;color:#54736b;margin-bottom:16px;display:block}
.redesign-home #before{background:#e8eee5}.redesign-home #before h2{max-width:750px}
.redesign-home .practical{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 65px;margin-top:45px}.redesign-home .practical>div{border-top:1px solid #b9c8ba;padding:23px 0 0}.redesign-home .practical h3{font:400 27px/1.2 "Iowan Old Style",Georgia,serif;letter-spacing:-.02em}.redesign-home .practical p{font-size:16px}.redesign-home #before .note{background:none;border:0;padding:0;font-size:13px}
.redesign-home #questions{padding:90px 0!important}.redesign-home .faq{max-width:980px}.redesign-home .faq details{border-color:#cdd4ce;padding:23px 0}.redesign-home .faq summary{font-size:18px;font-weight:500}.redesign-home .faq details p{max-width:780px;font-size:16px}
.redesign-home #inquire{background:var(--qb-yellow)}.redesign-home #inquire h2{font-size:clamp(52px,6vw,86px)}.redesign-home #inquire h2 em{color:#2a4d4e}.redesign-home #inquire .small{font-size:12px}
.redesign-home .composer{border-radius:3px;background:#faf9f6;box-shadow:none;padding:34px}.redesign-home .composer label{font-size:13px;font-weight:600}.redesign-home .composer textarea{min-height:160px;font-size:15px}.redesign-home .composer select{font-size:14px}.redesign-home .composer .btn{border-radius:3px}.redesign-home #status{font-size:13px}
/* Related pages receive the same breathing room and restrained controls. */
body:not(.redesign-home) .meet-hero,body:not(.redesign-home) .surrogate-head{padding-top:65px;padding-bottom:65px}
body:not(.redesign-home) .meet-reading{padding-top:35px}.meet-reading section{padding-block:44px}.surrogate-reading{padding-bottom:65px}
@media(min-width:1600px){.redesign-home #main>.wrap:first-child{background:var(--qb-teal)}}
@media(max-width:1050px){
 .redesign-home .hero.hero-invitation .invitation-copy{padding:55px 35px 28px}
 .redesign-home .hero.hero-invitation{min-height:650px}.redesign-home .hero.hero-invitation .invitation-room{min-height:650px}
 .redesign-home .hero.hero-invitation h1{font-size:clamp(48px,5.5vw,70px)}
 .redesign-home .recognition>.wrap{column-gap:40px}.redesign-home .question-grid{padding-left:25px}
 .redesign-home #main>section{padding:78px 0}.redesign-home .steps{gap:25px}
}
@media(max-width:760px){
 .nav{min-height:78px}.redesign-home .wrap{padding-inline:24px}
 .redesign-home .hero.hero-invitation{grid-template-columns:1fr;min-height:0;gap:0}
 .redesign-home .hero.hero-invitation .invitation-copy{padding:48px 24px 26px;max-width:600px;margin:auto;width:100%}
 .redesign-home .hero.hero-invitation h1{font-size:clamp(47px,9.1vw,66px);line-height:1.02}
 .redesign-home .hero.hero-invitation h1 em{font-size:clamp(25px,5.7vw,38px);margin-top:20px}
 .redesign-home .hero.hero-invitation .eyebrow{margin-bottom:23px;font-size:9px}
 .redesign-home .hero.hero-invitation .invitation-lead{font-size:17px;max-width:340px;margin-top:23px}
 .redesign-home .hero.hero-invitation .actions{margin-top:24px;gap:18px 23px}.redesign-home .hero.hero-invitation .invitation-reassurance{margin-bottom:25px}
 .redesign-home .hero.hero-invitation .invitation-facts{margin:0;text-align:center;gap:10px;font-size:10px}
 .redesign-home .hero.hero-invitation .invitation-room{width:calc(100% - 48px);max-width:552px;margin:16px auto 26px;height:430px;min-height:0;border-radius:180px 180px 3px 3px}
 .redesign-home .hero.hero-invitation .invitation-room>img{border-radius:inherit;object-position:50% 49%}
 .redesign-home .hero.hero-invitation .invitation-photo-note{left:-10px;top:27px;right:auto;font-size:23px;padding:12px 18px}
 .redesign-home .hero.hero-invitation .invitation-caption{left:18px;right:18px;bottom:20px;padding:18px}.redesign-home .hero.hero-invitation .invitation-caption span{font-size:32px}
 .redesign-home .band{padding:20px 24px;display:block;text-align:center}.redesign-home .band span{display:block}.redesign-home .band span+span{margin-top:7px}
 .redesign-home #main>section{padding:65px 0}.redesign-home h2{font-size:43px}
 .redesign-home .recognition>.wrap{display:block}.redesign-home .recognition-intro{max-width:none}.redesign-home .question-grid{padding:0;margin-top:34px;border-left:0}.redesign-home .question{padding:22px 0}.redesign-home .question>p{font-size:30px}
 .redesign-home .split{grid-template-columns:1fr;gap:35px}.redesign-home .explore-photo{max-width:none;margin-bottom:10px}.redesign-home .explore-photo img{height:310px}
 .redesign-home .steps{grid-template-columns:1fr;gap:32px}.redesign-home #session .step{grid-template-columns:42px 1fr;grid-template-rows:auto auto auto;column-gap:18px;row-gap:13px;padding-top:22px}.redesign-home #session .step .number{grid-row:1 / span 3;grid-column:1;font-size:28px}.redesign-home #session .step h3,.redesign-home #session .step>p,.redesign-home #session .step>.read-more{grid-column:2}.redesign-home #session .step h3{font-size:28px}.redesign-home #session .step p{margin:0}.redesign-home #session .section-head{display:block;margin-bottom:34px}.redesign-home #session .section-head>p{margin:25px 0 0;max-width:350px}
 .redesign-home #veronica .split>div:nth-child(2){padding-top:0}.redesign-home #veronica blockquote{font-size:32px}.redesign-home .option-grid{grid-template-columns:1fr;gap:28px}.redesign-home .practical{grid-template-columns:1fr;gap:22px}.redesign-home #questions{padding:65px 0!important}.redesign-home .faq summary{font-size:17px}.redesign-home #inquire h2{font-size:64px}.redesign-home .composer{padding:24px}.redesign-home .read-more h2{font-size:30px}
}
@media(prefers-reduced-motion:reduce){.btn{transition:none}.btn:hover{transform:none}}

/* One full-width, warm photographic invitation. */
.redesign-home .hero.hero-invitation{display:flex;position:relative;isolation:isolate;max-width:none;min-height:760px;overflow:hidden;background:#2a3e39}
.redesign-home .hero.hero-invitation .invitation-copy{position:relative;z-index:2;width:min(78%,940px);max-width:none;margin:0;padding:64px clamp(24px,6vw,96px) 32px;min-height:760px}
.redesign-home .hero.hero-invitation h1{font-size:clamp(48px,5.5vw,82px);line-height:1.02;max-width:800px}
.redesign-home .hero.hero-invitation h1>span{display:block}
.redesign-home .hero.hero-invitation h1 em{font-family:"Veronica Handwritten",Caveat,cursive;font-style:normal;font-weight:500;font-size:1.02em;line-height:1.12;letter-spacing:-.025em;white-space:normal;color:#F39A62;transform:rotate(-1.5deg);margin:5px 0 9px}
.redesign-home .hero.hero-invitation .invitation-room{position:absolute;inset:0;z-index:0;width:100%;max-width:none;height:100%;min-height:0;margin:0;border-radius:0;background:#253e38;overflow:hidden;pointer-events:none}
.redesign-home .hero.hero-invitation .invitation-room>img{position:absolute;inset:0;width:100%;height:100%;border-radius:0;object-fit:cover;object-position:center 54%;opacity:.7;filter:sepia(.22) saturate(.9) brightness(1.05)}
.redesign-home .hero.hero-invitation .invitation-room:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(21,43,39,.93) 0%,rgba(28,48,41,.82) 42%,rgba(57,46,30,.2) 100%),linear-gradient(0deg,rgba(32,49,39,.4),rgba(204,137,73,.12));pointer-events:none}
.redesign-home .hero.hero-invitation .invitation-caption{z-index:2;left:auto;right:clamp(24px,4vw,64px);bottom:34px;width:275px;padding:20px 23px;background:#faf5e9ed}
.redesign-home .hero.hero-invitation .invitation-photo-note{z-index:2;left:auto;right:clamp(24px,4vw,64px);top:44px;transform:rotate(4deg)}
.redesign-home .hero.hero-invitation .invitation-lead{max-width:440px;margin-top:25px}
.redesign-home .hero.hero-invitation .invitation-facts{max-width:610px;margin-top:12px}
@media(max-width:1050px){.redesign-home .hero.hero-invitation .invitation-copy{width:84%;padding-left:36px;padding-right:36px}.redesign-home .hero.hero-invitation .invitation-caption{width:235px;right:28px}.redesign-home .hero.hero-invitation .invitation-caption span{font-size:30px}.redesign-home .hero.hero-invitation .invitation-photo-note{right:28px}}
@media(max-width:760px){
 .redesign-home .hero.hero-invitation{min-height:0;display:block}
 .redesign-home .hero.hero-invitation .invitation-copy{width:100%;min-height:0;padding:47px 24px 170px;max-width:600px;margin:auto}
 .redesign-home .hero.hero-invitation h1{font-size:clamp(43px,8.5vw,62px)}
 .redesign-home .hero.hero-invitation h1 em{font-size:1.03em;margin:7px 0 10px;white-space:normal}
 .redesign-home .hero.hero-invitation .invitation-room{position:absolute;inset:0;width:100%;max-width:none;height:100%;min-height:0;margin:0;border-radius:0}
 .redesign-home .hero.hero-invitation .invitation-room>img{object-position:58% 50%}
 .redesign-home .hero.hero-invitation .invitation-room:after{background:linear-gradient(90deg,rgba(21,43,39,.88),rgba(30,47,39,.64)),linear-gradient(0deg,rgba(190,121,61,.14),rgba(190,121,61,.14))}
 .redesign-home .hero.hero-invitation .invitation-caption{left:24px;right:auto;bottom:25px;width:min(300px,calc(100% - 48px));padding:18px 21px}
 .redesign-home .hero.hero-invitation .invitation-photo-note{top:auto;bottom:104px;right:24px;left:auto;padding:10px 15px;font-size:20px;transform:rotate(4deg)}
 .redesign-home .hero.hero-invitation .invitation-facts{margin-top:10px}
}

/* Bring the invitation inward and give its headline greater presence. */
.redesign-home .hero.hero-invitation .invitation-copy{width:min(100%,1040px);margin-inline:auto;padding:64px clamp(32px,6vw,80px) 36px;min-height:800px}
.redesign-home .hero.hero-invitation h1{font-size:clamp(60px,6.8vw,104px);line-height:.99;max-width:900px}
.redesign-home .hero.hero-invitation h1 em{font-size:.94em;line-height:1.1;margin:8px 0 13px}
.redesign-home .hero.hero-invitation .invitation-room:after{background:linear-gradient(90deg,rgba(21,43,39,.87),rgba(28,48,41,.83) 58%,rgba(57,46,30,.22)),linear-gradient(0deg,rgba(32,49,39,.4),rgba(204,137,73,.12))}
@media(max-width:760px){
 .redesign-home .hero.hero-invitation .invitation-copy{width:100%;max-width:620px;min-height:0;margin-inline:auto;padding:48px 28px 175px}
 .redesign-home .hero.hero-invitation h1{font-size:clamp(48px,9.5vw,72px);line-height:1.02}
 .redesign-home .hero.hero-invitation h1 em{font-size:1em;margin:9px 0 13px}
}

/* Exactly three heading lines, sized to the text column rather than the viewport. */
.redesign-home .hero.hero-invitation .invitation-copy{container-type:inline-size}
.redesign-home .hero.hero-invitation h1{font-size:clamp(24px,6.2vw,104px);font-size:clamp(24px,9.3cqw,104px);max-width:100%;line-height:1.04}
.redesign-home .hero.hero-invitation h1>span,.redesign-home .hero.hero-invitation h1>em{display:block;white-space:nowrap}

/* Landing-page alignment pass: common note edges and predictable column flow. */
.redesign-home .hero-notes{position:absolute;z-index:3;top:48px;right:clamp(28px,4vw,64px);width:220px;display:grid;grid-template-columns:minmax(0,1fr);gap:14px;pointer-events:none}
.redesign-home .hero.hero-invitation .hero-notes .invitation-photo-note,
.redesign-home .hero.hero-invitation .hero-notes .invitation-caption{position:static;inset:auto;width:100%;margin:0;transform:none;border-radius:3px;box-shadow:none;text-align:center;box-sizing:border-box;padding:17px 19px}
.redesign-home .hero.hero-invitation .hero-notes .invitation-photo-note{font:500 28px/1.15 "Veronica Handwritten",Caveat,cursive;background:#ffe29e}
.redesign-home .hero.hero-invitation .hero-notes .invitation-caption span{font:500 30px/1.15 "Veronica Handwritten",Caveat,cursive;display:block}
.redesign-home .hero.hero-invitation .hero-notes .invitation-caption small{display:block;font-size:11px;line-height:1.6;margin-top:8px}
.redesign-home .hero.hero-invitation .invitation-facts{text-align:center;align-items:start}
.redesign-home .split>div,.redesign-home .steps>* , .redesign-home .option-grid>* ,.redesign-home .practical>*{min-width:0}
.redesign-home #session .step,.redesign-home #session .step:nth-child(2){grid-template-rows:44px minmax(65px,auto) 1fr auto;gap:12px}
.redesign-home #session .step .number{line-height:1;margin:0;align-self:start}
.redesign-home #session .step h3{line-height:1.2;align-self:start}
.redesign-home #session .step>.read-more{align-self:end;width:100%}
.redesign-home .option-grid{align-items:stretch}.redesign-home .option-grid article{display:flex;flex-direction:column}.redesign-home .option-grid article>.text-link{margin-top:auto;align-self:flex-start}
.redesign-home .recognition>.wrap>.eyebrow{margin-top:0}.redesign-home .recognition>.wrap>h2{margin-top:0!important}
.redesign-home .qhht-live-footer .q-footer-main,.redesign-home .qhht-live-footer .q-footer-bottom{padding-inline:clamp(24px,6vw,96px)}
@media(max-width:1100px){
 .redesign-home .hero.hero-invitation{display:block}
 .redesign-home .hero.hero-invitation .invitation-copy{min-height:0;padding-bottom:28px}
 .redesign-home .hero-notes{position:relative;inset:auto;width:calc(100% - 2 * clamp(32px,6vw,80px));max-width:880px;margin:0 auto 34px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
 .redesign-home .hero.hero-invitation .hero-notes .invitation-photo-note,.redesign-home .hero.hero-invitation .hero-notes .invitation-caption{display:flex;flex-direction:column;justify-content:center;min-height:100px}
 .redesign-home #session .step,.redesign-home #session .step:nth-child(2){grid-template-rows:44px minmax(75px,auto) 1fr auto}
}
@media(max-width:760px){
 .redesign-home .hero.hero-invitation .invitation-copy{padding:48px 28px 26px}
 .redesign-home .hero-notes{width:calc(100% - 56px);max-width:564px;margin:0 auto 28px;gap:12px}
 .redesign-home .hero.hero-invitation .hero-notes .invitation-photo-note{font-size:25px}
 .redesign-home .hero.hero-invitation .hero-notes .invitation-caption span{font-size:26px}
 .redesign-home .hero.hero-invitation .hero-notes .invitation-photo-note,.redesign-home .hero.hero-invitation .hero-notes .invitation-caption{padding:15px 12px}
 .redesign-home #session .step,.redesign-home #session .step:nth-child(2){grid-template-rows:auto auto auto;row-gap:13px}
 .redesign-home .recognition>.wrap>h2{margin-bottom:24px}
 .redesign-home .qhht-live-footer .q-footer-main,.redesign-home .qhht-live-footer .q-footer-bottom{padding-inline:24px}
}
@media(max-width:380px){.redesign-home .hero-notes{grid-template-columns:1fr}.redesign-home .hero.hero-invitation .hero-notes .invitation-photo-note,.redesign-home .hero.hero-invitation .hero-notes .invitation-caption{min-height:0}}

/* Private review: one shared page edge, with supporting notes in the reading flow. */
.redesign-home .hero.hero-invitation .invitation-copy{width:100%;max-width:1440px;margin-inline:auto;padding:64px clamp(24px,6vw,96px) 40px;min-height:0;container-type:inline-size}
.redesign-home .hero.hero-invitation h1{width:100%;max-width:100%;font-size:clamp(24px,9.3cqw,104px)}
.redesign-home .hero.hero-invitation .invitation-facts{font-size:13px;line-height:1.6;letter-spacing:0;max-width:720px;gap:20px;text-align:left;margin-top:12px;padding-top:19px}
.redesign-home .hero.hero-invitation .hero-notes{position:static;inset:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-width:610px;gap:16px;margin:27px 0 0;align-items:stretch;pointer-events:auto}
.redesign-home .hero.hero-invitation .hero-notes .invitation-photo-note,.redesign-home .hero.hero-invitation .hero-notes .invitation-caption{position:static;inset:auto;width:100%;min-height:0;margin:0;padding:15px 18px;transform:none;text-align:left;display:flex;flex-direction:column;justify-content:center}
.redesign-home .hero.hero-invitation .hero-notes .invitation-photo-note{font-size:25px;line-height:1.15}
.redesign-home .hero.hero-invitation .hero-notes .invitation-caption span{font-size:26px;line-height:1.15}
.redesign-home .hero.hero-invitation .hero-notes .invitation-caption small{font-size:12px;line-height:1.5;margin-top:6px}
@media(max-width:760px){
 .redesign-home .hero.hero-invitation .invitation-copy{max-width:1440px;padding:44px 24px 32px}
 .redesign-home .hero.hero-invitation .invitation-facts{font-size:12px;gap:14px}
 .redesign-home .hero.hero-invitation .hero-notes{width:100%;max-width:610px;margin:24px 0 0;gap:12px}
 .redesign-home .hero.hero-invitation .hero-notes .invitation-photo-note,.redesign-home .hero.hero-invitation .hero-notes .invitation-caption{padding:14px}
}
@media(max-width:560px){
 .redesign-home .hero.hero-invitation .invitation-facts{grid-template-columns:1fr;gap:7px;font-size:13px}
 .redesign-home .hero.hero-invitation .hero-notes{grid-template-columns:1fr;gap:10px}
}

/* Softly rounded actions with restrained gradients in the approved palette. */
body .btn,body button:not(.portrait-picker){border-radius:999px!important}
body .btn{background-image:linear-gradient(135deg,#477879 0%,#2A4D4E 100%)!important;background-color:#2A4D4E;color:#FAF9F6;border:1px solid #3B696A;box-shadow:0 5px 15px #203e3f1c;min-height:44px;transition:filter .2s,box-shadow .2s,transform .2s}
body .btn:hover{filter:brightness(1.06);box-shadow:0 7px 18px #203e3f29}
body .btn.outline,body .btn.light{background-image:linear-gradient(135deg,#FAF9F6 0%,#E4EDE2 100%)!important;color:#2A4D4E;border-color:#3B696A}
body.redesign-home .hero.hero-invitation .invitation-primary{background-image:linear-gradient(135deg,#FFF0C5 0%,#FFE29E 55%,#F6CA82 100%)!important;background-color:#FFE29E;color:#203e3f;border-color:#FFE29E;box-shadow:0 5px 17px #102c2b26;border-radius:999px}
body button.menu{background-image:linear-gradient(135deg,#FAF9F6,#E4EDE2);color:#2A4D4E;border:1px solid #bac9be;min-height:44px;padding:8px 18px}
body .portrait-controls button,body .portrait-space button:not(.portrait-picker){background-image:linear-gradient(135deg,#477879,#2A4D4E);color:#FAF9F6;border:1px solid #3B696A}
@media(prefers-reduced-motion:reduce){body .btn{transition:none}}

/* Meet Veronica shares the homepage hero type scale, on the deeper brand teal. */
:root{--matched-hero-size:clamp(24px,8.184vw,104px)}
body:not(.redesign-home) .meet-hero,body:not(.redesign-home) .meet-hero:before{background:#203e3f}
body:not(.redesign-home) .meet-hero h1{font-family:"Iowan Old Style","Palatino Linotype",Georgia,serif;font-size:var(--matched-hero-size);font-weight:400;line-height:1.04;letter-spacing:-.055em;margin:0 0 28px;color:#FAF9F6}
body:not(.redesign-home) .meet-hero h1 em{display:block;font-family:"Veronica Handwritten",Caveat,cursive;font-size:.94em;font-weight:500;font-style:normal;line-height:1.1;letter-spacing:-.025em;color:#ffe29e;margin:8px 0 0}
body:not(.redesign-home) .meet-hero h1>br{display:none}
@media(max-width:760px){:root{--matched-hero-size:clamp(24px,calc(9.3vw - 4.464px),104px)}body:not(.redesign-home) .meet-hero h1 em{font-size:1em}}

/* Surrogate opening: a distinct, full-width dark teal welcome. */
body .surrogate-head{position:relative;isolation:isolate;background:#2A4D4E;color:#FAF9F6}
body .surrogate-head:before{content:"";position:absolute;inset-block:0;left:50%;width:100vw;transform:translateX(-50%);background:#2A4D4E;z-index:-1;pointer-events:none}
body .surrogate-head h1,body .surrogate-head p{color:#FAF9F6}
body .surrogate-head h1 em,body .surrogate-head .welcome-note{color:#ffe29e}
body .surrogate-head .eyebrow{color:#D4E8D6}

/* Consistent hero typography and the same deeper teal as Meet Veronica. */
body .surrogate-head,body .surrogate-head:before{background:#203e3f}
body .surrogate-head{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);column-gap:65px;row-gap:0;align-items:start}
body .surrogate-head>div:first-child{display:contents}
body .surrogate-head>div:first-child>.welcome-note,body .surrogate-head>div:first-child>.eyebrow,body .surrogate-head>div:first-child>h1{grid-column:1 / -1}
body .surrogate-head h1{font-family:"Iowan Old Style","Palatino Linotype",Georgia,serif;font-size:var(--matched-hero-size);font-weight:400;line-height:1.04;letter-spacing:-.055em;margin:24px 0 35px;max-width:100%;color:#FAF9F6}
body .surrogate-head h1>br{display:none}
body .surrogate-head h1 em{display:block;font-family:"Veronica Handwritten",Caveat,cursive;font-size:.94em;font-weight:500;font-style:normal;line-height:1.1;letter-spacing:-.025em;color:#ffe29e;margin:8px 0 0}
body .surrogate-head>div:first-child>p:not(.welcome-note){grid-column:1;font-size:17px;line-height:1.75}
body .surrogate-head>figure{grid-column:2;grid-row:4 / span 2;align-self:stretch}
body .surrogate-head>figure>img{height:100%;min-height:300px;max-height:430px;width:100%;object-fit:cover}
@media(max-width:760px){
 body .surrogate-head{grid-template-columns:minmax(0,1fr);gap:0}
 body .surrogate-head h1 em{font-size:1em}
 body .surrogate-head>figure{grid-column:1;grid-row:auto;margin-top:14px!important}
 body .surrogate-head>figure>img{height:320px;min-height:0}
}

/* Let the homepage photograph continue behind the navigation to the top edge. */
body.redesign-home>header{position:absolute;inset:0 0 auto;z-index:10;width:100%;background:transparent;border-bottom:1px solid #faf9f622;backdrop-filter:none;color:#FAF9F6}
body.redesign-home>header .brand,body.redesign-home>header nav a:not(.btn){color:#FAF9F6}
body.redesign-home>header .brand small{color:#D4E8D6}
body.redesign-home>header button.menu{background-image:linear-gradient(135deg,#3B696A,#203e3f);color:#FAF9F6;border-color:#d4e8d655}
body.redesign-home .hero.hero-invitation .invitation-copy{padding-top:152px}
body.redesign-home>header nav.open{top:100%;background:#203e3f;border-bottom-color:#d4e8d644;color:#FAF9F6}
@media(max-width:760px){body.redesign-home .hero.hero-invitation .invitation-copy{padding-top:122px}}

/* Page-matched English / Spanish navigation. */
nav .language-switch{display:inline-flex;align-items:center;gap:3px;padding:3px;border:1px solid #3b696a45;border-radius:999px;flex-shrink:0}
nav .language-switch .language-choice{display:inline-flex;justify-content:center;align-items:center;min-width:42px;min-height:34px;padding:5px 9px;border-radius:999px;text-decoration:none;font:700 11px/1 "Avenir Next","Segoe UI",Arial,sans-serif;letter-spacing:.03em;color:#2A4D4E}
nav .language-switch .language-choice[aria-current="page"]{background:linear-gradient(135deg,#3B696A,#203e3f);color:#FAF9F6}
body.redesign-home>header nav .language-switch{border-color:#d4e8d655}
body.redesign-home>header nav .language-switch .language-choice{color:#FAF9F6}
body.redesign-home>header nav .language-switch .language-choice[aria-current="page"]{background:linear-gradient(135deg,#fff0c5,#ffe29e);color:#203e3f}
@media(min-width:851px) and (max-width:1250px){header nav{gap:13px}header nav a:not(.btn){font-size:12px}header .nav{gap:18px}}
@media(max-width:850px){nav .language-switch{margin-top:6px}body.redesign-home>header nav .language-switch{border-color:#d4e8d655}}

/* Navigation remains available throughout the scroll, in both languages. */
body>header{position:sticky;top:0;z-index:100}
body.redesign-home>header{position:fixed;inset:0 0 auto;z-index:100;transition:background-color .2s,box-shadow .2s}
body.redesign-home>header.is-scrolled{background:#203e3ff7;backdrop-filter:blur(12px);border-bottom-color:#d4e8d633;box-shadow:0 3px 15px #142f2f26}
body>header nav.open{top:100%}
@media(max-width:850px){body>header nav.open{max-height:calc(100dvh - 78px);overflow-y:auto;overscroll-behavior:contain}}
@media(prefers-reduced-motion:reduce){body.redesign-home>header{transition:none}}

/* Ten percent tighter headline rhythm; two deliberate desktop description lines. */
body.redesign-home .hero.hero-invitation h1{line-height:.936}
body.redesign-home .hero.hero-invitation h1 em{line-height:.99;margin-top:7.2px;margin-bottom:11.7px}
body.redesign-home .hero.hero-invitation .invitation-lead{width:100%;max-width:none}
@media(min-width:1000px){body.redesign-home .hero.hero-invitation .invitation-lead .hero-lead-line{display:block}}
@media(max-width:999px){body.redesign-home .hero.hero-invitation .invitation-lead{max-width:740px}}

/* Readable mobile hero scale; allow natural wrapping instead of shrinking to fit. */
@media(max-width:760px){
 body.redesign-home .hero.hero-invitation h1{font-size:clamp(44px,12vw,58px);line-height:1.04;letter-spacing:-.045em}
 body.redesign-home .hero.hero-invitation h1>span{white-space:normal}
 body.redesign-home .hero.hero-invitation h1 em{font-size:1em;line-height:1.1;white-space:normal}
}
