/* woodlandlifeinsurance.vip: the Woodland Opera House matinee program, drawn as a hand-lettered zine.
   Lavender program stock with ruled lines, plum-black marker ink, footlight-yellow / azure / coral highlighters,
   velvet-curtain scallops, marquee bulbs, perforated ticket stubs; numbered acts are the structure. */
@font-face{font-family:"Gochi Hand";src:url(/assets/font-wok2iknw-gochi-hand-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Nunito";src:url(/assets/font-wok2iknw-nunito-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Nunito";src:url(/assets/font-wok2iknw-nunito-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
:root{--ink:#241A24;--ink-soft:#52475A;--stock:#EEEDF4;--rule:#DAD6E6;--white:#FFFFFF;--foot:#FFD83D;--foot-pale:#FFF1B0;--scarlet:#BE2D1B;--scarlet-deep:#8E1F12;--azure:#9FD6F2;--azure-pale:#E3F3FC;--coral:#F5A58A;--link:#1B4F9C;
--hand:"Gochi Hand","Segoe Print","Bradley Hand",cursive;--body:"Nunito","Trebuchet MS",Verdana,sans-serif;--measure:40rem;--shadow:5px 5px 0 var(--ink);
--valance:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='26' viewBox='0 0 44 26'%3E%3Cpath d='M0 0h44v9c0 9-9 17-22 17S0 18 0 9z' fill='%23BE2D1B'/%3E%3Cpath d='M22 0v22M0 0v9M44 0v9' stroke='%238E1F12' stroke-width='3' fill='none'/%3E%3Cpath d='M0 9c0 9 9 17 22 17s22-8 22-17' stroke='%23241A24' stroke-width='3' fill='none'/%3E%3C/svg%3E");
--bulbs:radial-gradient(circle at center,var(--foot) 0 5px,var(--ink) 5.5px 7px,transparent 7.5px)}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background-color:var(--stock);background-image:linear-gradient(transparent 35px,var(--rule) 35px);background-size:100% 36px;color:var(--ink);font-family:var(--body);font-size:1.0625rem;line-height:1.65;overflow-x:clip}
::selection{background:var(--foot);color:var(--ink)}
img{display:block;max-width:100%;height:auto}
a{color:var(--link);text-underline-offset:.2em;text-decoration-thickness:2px}
a:not(.s2h4n-cta):not(.s2h4n-btn):not(.s2h4n-skip):not(.s2h4n-brand):hover{color:var(--ink);background:linear-gradient(transparent 50%,var(--foot) 50%)}
:focus-visible{outline:3px solid var(--scarlet);outline-offset:3px;border-radius:4px}
h1,h2,h3{font-family:var(--hand);font-weight:400;line-height:1.1;margin:0 0 .5em;color:var(--ink);text-wrap:balance}
h1{font-size:clamp(2.9rem,6.6vw,5.4rem)}
h2{font-size:clamp(2.3rem,4.6vw,3.6rem)}
h3{font-size:1.85rem;line-height:1.12}
p{margin:0 0 1em;max-width:var(--measure)}
strong{font-weight:700}
.s2h4n-wrap{width:min(100% - 2.5rem,74rem);margin-inline:auto}
@media (max-width:600px){.s2h4n-wrap{width:min(100% - 2rem,74rem)}}
.s2h4n-skip{position:absolute;left:-999px;top:0;background:var(--ink);color:var(--white);padding:.75rem 1rem;z-index:99}.s2h4n-skip:focus{left:1rem;top:1rem}

/* header: program masthead under a velvet valance */
.s2h4n-head{position:relative;z-index:20;background:var(--white);border-bottom:3px solid var(--ink);border-top:10px solid var(--ink)}
.s2h4n-head::after{content:"";position:absolute;left:0;right:0;top:calc(100% + 3px);height:26px;background:var(--valance) repeat-x left top;pointer-events:none}
.s2h4n-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.2rem 2rem;padding-block:.55rem}
.s2h4n-brand{display:inline-flex;align-items:center;gap:.65rem;min-height:48px;font-family:var(--hand);font-weight:400;font-size:2rem;line-height:1;color:var(--ink);text-decoration:none}
.s2h4n-brand img{width:36px;height:36px;border-radius:8px}
.s2h4n-brand span{background:linear-gradient(transparent 58%,var(--foot) 58% 92%,transparent 92%);padding:0 .15em}
.s2h4n-links{display:flex;flex-wrap:wrap;align-items:center;gap:.1rem 1.5rem}
.s2h4n-links a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);text-decoration:none;font-weight:700;font-size:1.0625rem;background:linear-gradient(var(--azure),var(--azure)) left 80%/0 .45em no-repeat;transition:background-size .35s ease}
.s2h4n-links a:not(.s2h4n-cta):hover{background-size:100% .45em;color:var(--ink)}
.s2h4n-cta{background:var(--scarlet)!important;color:var(--white)!important;padding:0 1.3rem;border:3px solid var(--ink);border-radius:8px;box-shadow:3px 3px 0 var(--ink);margin-left:.4rem;outline:2px dashed rgba(255,255,255,.75);outline-offset:-7px;transition:transform .15s ease,box-shadow .15s ease}
.s2h4n-links a.s2h4n-cta:hover{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink);background:var(--scarlet-deep)!important;color:var(--white)!important}
.s2h4n-menu{display:none}

/* weather: the lobby marquee board with its bulbs */
.s2h4n-wx{background:none;color:var(--white);margin:3.2rem 0 0}
.s2h4n-wx-row{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1.8rem;padding:1.5rem 1.4rem;background:var(--ink);color:var(--white);border:3px solid var(--ink);border-radius:12px;box-shadow:var(--shadow)}
.s2h4n-wx-row::before,.s2h4n-wx-row::after{content:"";position:absolute;left:14px;right:14px;height:14px;background:var(--bulbs) 0 0/26px 14px repeat-x;pointer-events:none}
.s2h4n-wx-row::before{top:5px}.s2h4n-wx-row::after{bottom:5px}
.s2h4n-wx-photo{display:inline-flex;align-items:center;gap:.6rem;min-height:48px;background:none;border:0;padding:0;color:var(--white);font:inherit;font-weight:700;cursor:pointer}
.s2h4n-wx-photo img{width:46px;height:46px;border-radius:50%;object-fit:cover;border:3px solid var(--foot)}
.s2h4n-wx-photo span{font-size:1rem;font-weight:700;letter-spacing:0;text-transform:none;border:2px solid var(--foot);border-radius:6px;padding:.2rem .8rem;background:var(--foot);color:var(--ink)}
.s2h4n-wx-photo:hover span,.s2h4n-wx-photo[aria-expanded=true] span{background:var(--azure);border-color:var(--azure);color:var(--ink)}
.s2h4n-wx-now{display:flex;align-items:center;gap:.6rem}
.s2h4n-wx-now strong{font-family:var(--hand);font-weight:400;font-size:2.7rem;line-height:1;margin-right:.5rem;color:var(--foot)}
.s2h4n-wx-now span{font-size:1.0625rem}
.s2h4n-wx-now small{display:inline;font-size:1.0625rem;opacity:1;margin-left:.6rem}
.s2h4n-wx-icon{display:inline-flex;color:var(--foot)}.s2h4n-wx-icon svg{width:32px;height:32px}
.s2h4n-wx-days{display:flex;flex-wrap:wrap;gap:.2rem 1.4rem;list-style:none;margin:0;padding:0}
.s2h4n-wx-days li{display:flex;align-items:center;flex-wrap:wrap;gap:0 .45rem;border:0;border-radius:0;padding:0 0 0 1rem;min-width:0;font-size:1.0625rem;border-left:2px dashed #B8AEC4}
.s2h4n-wx-day{font-weight:700}
.s2h4n-wx-glyph{display:inline-flex;color:var(--azure)}.s2h4n-wx-glyph svg{width:24px;height:24px}
.s2h4n-wx-hl strong{font-weight:700;font-size:1.0625rem}.s2h4n-wx-hl em{font-style:normal;margin-left:.3rem;opacity:1}
.s2h4n-wx-cond{max-width:none;white-space:normal;opacity:1;font-size:1.0625rem;overflow:visible;text-overflow:clip}
.s2h4n-wx-source{margin-left:auto;font-size:1rem;opacity:1;color:#DAD3E3}
.s2h4n-wx-panel{padding:1rem 0 0}.s2h4n-wx-panel img{border:3px solid var(--ink);border-radius:12px;max-width:600px;width:100%;background:var(--white)}.s2h4n-wx-panel p{font-size:1rem;color:var(--ink-soft);opacity:1;margin:.5rem 0 0}
@media (max-width:700px){.s2h4n-wx-row{padding:1.5rem 1rem}.s2h4n-wx-source{margin-left:0;width:100%}.s2h4n-wx-days{flex-direction:column;gap:.2rem}.s2h4n-wx-days li{border-left:0;padding-left:0}.s2h4n-wx-now strong{font-size:2.3rem}}

/* hero: the evening bill, the Opera House and its ghost light */
.s2h4n-hero{position:relative;padding:clamp(2.2rem,5vw,3.8rem) 0 clamp(2.5rem,5vw,4.2rem);background:none;overflow-x:clip}
.s2h4n-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:2rem clamp(2rem,5vw,4rem);align-items:center}
.s2h4n-hero-copy{position:relative}
.s2h4n-eyebrow{margin:0 0 1rem;display:inline-block;max-width:none;font-family:var(--hand);font-weight:400;font-size:1.55rem;line-height:1.1;letter-spacing:.02em;text-transform:none;color:var(--ink);background:var(--azure);border:3px solid var(--ink);border-radius:6px;padding:.2rem .9rem .25rem;transform:rotate(-2deg);box-shadow:3px 3px 0 var(--ink)}
.s2h4n-hero h1{display:inline;margin:0;padding:.04em .14em;background:linear-gradient(176deg,transparent 52%,var(--foot) 52% 94%,transparent 94%);-webkit-box-decoration-break:clone;box-decoration-break:clone;line-height:1.2}
.s2h4n-hero .s2h4n-eyebrow{display:block;width:fit-content}
.s2h4n-lead{font-size:1.25rem;line-height:1.65;max-width:35rem;margin:1.7rem 0 0;color:var(--ink)}
.s2h4n-actions{margin:1.8rem 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:.9rem 1.4rem;max-width:none}
.s2h4n-trust{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem 1.6rem;margin:2rem 0 0;padding:0;list-style:none;font-size:1.0625rem;max-width:36rem}
.s2h4n-trust li{display:flex;align-items:flex-start;gap:.7rem;font-weight:700;line-height:1.4}
.s2h4n-trust li::before{content:"";flex:none;width:1.2rem;height:1.2rem;margin-top:.15em;border:3px solid var(--ink);border-radius:50%;background:var(--foot)}
.s2h4n-trust li:nth-child(2)::before{background:var(--azure)}.s2h4n-trust li:nth-child(3)::before{background:var(--coral)}.s2h4n-trust li:nth-child(4)::before{background:var(--foot)}
.s2h4n-stage{position:relative;min-height:22rem;display:flex;align-items:flex-end;justify-content:center}
.s2h4n-facade{width:min(100%,23rem);height:auto;margin-right:6.5rem;transform:rotate(-1deg)}
.s2h4n-doodle{position:absolute;right:0;bottom:0;width:10rem}
.s2h4n-mascot{width:100%;height:auto;display:block;transform:rotate(4deg)}
.s2h4n-arrow{position:absolute;right:6rem;bottom:11.5rem;width:8rem;height:auto;pointer-events:none}
@keyframes s2h4n-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@media (prefers-reduced-motion:no-preference){.s2h4n-draw path{stroke-dasharray:1;animation:s2h4n-draw 1.6s ease-out .3s backwards}}

/* buttons: ticket-shaped, with a dashed stitch line */
.s2h4n-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:54px;padding:0 1.8rem;border:3px solid var(--ink);border-radius:8px;background:var(--foot);color:var(--ink);font-family:var(--body);font-size:1.0625rem;font-weight:700;text-decoration:none;cursor:pointer;box-shadow:var(--shadow);outline:2px dashed rgba(36,26,36,.55);outline-offset:-8px;transition:transform .15s ease,box-shadow .15s ease}
.s2h4n-btn span{display:inline-block;transition:transform .2s ease}
.s2h4n-btn:hover span{transform:translateX(4px)}
.s2h4n-btn--primary{background:var(--scarlet);color:var(--white);outline-color:rgba(255,255,255,.75)}
.s2h4n-btn--primary:hover{background:var(--scarlet-deep);transform:translate(3px,3px);box-shadow:2px 2px 0 var(--ink);filter:none}
.s2h4n-btn--ghost{background:var(--white);color:var(--ink)}
.s2h4n-btn--ghost:hover{background:var(--azure);transform:translate(3px,3px);box-shadow:2px 2px 0 var(--ink)}
.s2h4n-btn[disabled]{opacity:.6;cursor:progress}
.s2h4n-btn--primary[disabled]:hover{transform:none;box-shadow:var(--shadow)}

/* mosaic: three photo tickets in a row, caption on the perforated stub */
.s2h4n-hero-photos{margin-top:clamp(2rem,4vw,3.2rem)}
.s2h4n-mosaic{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.8rem clamp(1.2rem,3vw,2.2rem);order:0}
.s2h4n-mosaic a{position:relative;display:block;background:var(--white);border:3px solid var(--ink);border-radius:10px;padding:.5rem .5rem 0;color:var(--ink);text-decoration:none;box-shadow:var(--shadow);aspect-ratio:auto;overflow:visible;transform:rotate(-.8deg);transition:transform .2s ease}
.s2h4n-mosaic a:first-child{grid-column:auto;aspect-ratio:auto}
.s2h4n-mosaic a:nth-child(2){transform:rotate(.7deg)}
.s2h4n-mosaic a:nth-child(3){transform:rotate(-.4deg)}
.s2h4n-mosaic a:hover{transform:rotate(0) translateY(-4px)}
.s2h4n-mosaic img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border:2px solid var(--ink);border-radius:4px;transition:none}
.s2h4n-mosaic a:hover img{transform:none}
.s2h4n-mosaic span{position:relative;display:block;margin:.6rem -.5rem 0;padding:.75rem 1rem .8rem;background:none;border-top:3px dashed var(--ink);color:var(--ink);font-weight:700;font-size:1.0625rem;line-height:1.35}
.s2h4n-mosaic span::before,.s2h4n-mosaic span::after{content:"";position:absolute;top:-14px;width:24px;height:24px;border:3px solid var(--ink);border-radius:50%;background:var(--stock);clip-path:inset(0 0 50% 0)}
.s2h4n-mosaic span::before{left:-15px;clip-path:inset(0 50% 50% 0)}
.s2h4n-mosaic span::after{right:-15px;clip-path:inset(0 0 50% 50%)}
.s2h4n-mosaic a:hover span{text-decoration:underline;text-decoration-thickness:3px;text-decoration-color:var(--scarlet);text-underline-offset:.2em}
@media (max-width:860px){.s2h4n-mosaic{grid-template-columns:minmax(0,1fr);max-width:30rem}.s2h4n-mosaic img{aspect-ratio:16/8}}

/* sections */
.s2h4n-section{padding:clamp(2.5rem,6vw,4.5rem) 0;position:relative;background:none;color:var(--ink)}
.s2h4n-section--soft{background:none}
.s2h4n-section--last{padding-bottom:clamp(3rem,7vw,5rem)}
.s2h4n-panel-head{position:relative;display:flex;flex-direction:column;align-items:flex-start;margin-bottom:clamp(1.6rem,3.5vw,2.6rem)}
.s2h4n-panel-head h2{margin:0;max-width:36rem}
.s2h4n-panel-head .s2h4n-eyebrow{font-size:1.45rem;margin-bottom:.9rem;background:var(--foot)}
.s2h4n-section--rates .s2h4n-panel-head .s2h4n-eyebrow{background:var(--coral);transform:rotate(1.5deg)}
.s2h4n-section--last .s2h4n-panel-head .s2h4n-eyebrow{background:var(--azure)}
.s2h4n-cols{display:grid;gap:1.6rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.s2h4n-card{background:var(--white);border:3px solid var(--ink);border-radius:10px;padding:1.3rem 1.4rem}

/* the three acts: long tickets with a numbered stub */
.s2h4n-steps{grid-template-columns:minmax(0,1fr);gap:2.6rem;max-width:56rem}
.s2h4n-steps>.s2h4n-card{position:relative;display:grid;grid-template-columns:5.6rem minmax(0,1fr);column-gap:1.6rem;align-items:start;padding:1.5rem 1.6rem 1.5rem 0;box-shadow:var(--shadow);border-radius:12px}
.s2h4n-steps>.s2h4n-card:nth-child(2){margin-left:clamp(0rem,4vw,3rem)}
.s2h4n-steps>.s2h4n-card::before,.s2h4n-steps>.s2h4n-card::after{content:"";position:absolute;left:5.6rem;width:26px;height:26px;margin-left:-13px;border:3px solid var(--ink);border-radius:50%;background:var(--stock)}
.s2h4n-steps>.s2h4n-card::before{top:-16px;clip-path:inset(50% 0 0 0)}
.s2h4n-steps>.s2h4n-card::after{bottom:-16px;clip-path:inset(0 0 50% 0)}
.s2h4n-num{grid-column:1;grid-row:1/span 2;align-self:stretch;display:grid;place-items:center;width:auto;height:auto;margin:-1.5rem 0;border:0;border-right:3px dashed var(--ink);border-radius:9px 0 0 9px;background:var(--foot);color:var(--ink);font-family:var(--hand);font-weight:400;font-size:3.4rem;line-height:1}
.s2h4n-steps>.s2h4n-card:nth-child(2) .s2h4n-num{background:var(--azure)}
.s2h4n-steps>.s2h4n-card:nth-child(3) .s2h4n-num{background:var(--coral)}
.s2h4n-steps h3{grid-column:2;margin:0 0 .5rem;justify-self:start;background:linear-gradient(transparent 60%,var(--foot-pale) 60% 94%,transparent 94%);padding:0 .1em}
.s2h4n-steps>.s2h4n-card:nth-child(2) h3{background-image:linear-gradient(transparent 60%,var(--azure-pale) 60% 94%,transparent 94%)}
.s2h4n-steps>.s2h4n-card:nth-child(3) h3{background-image:linear-gradient(transparent 60%,#FDE0D5 60% 94%,transparent 94%)}
.s2h4n-steps p{grid-column:2;margin:0;line-height:1.7}
.s2h4n-steps>.s2h4n-card:not(:last-child) p::after{content:""}
@media (max-width:700px){.s2h4n-steps{gap:2.4rem}.s2h4n-steps>.s2h4n-card{grid-template-columns:3.6rem minmax(0,1fr);column-gap:1rem;padding:1.2rem 1rem 1.2rem 0}.s2h4n-steps>.s2h4n-card::before,.s2h4n-steps>.s2h4n-card::after{left:3.6rem}.s2h4n-num{font-size:2.5rem;margin:-1.2rem 0}.s2h4n-steps>.s2h4n-card:nth-child(2){margin-left:0}}

/* learn: four program pages with a folded corner */
.s2h4n-learn{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem clamp(1.6rem,4vw,3rem)}
.s2h4n-learn>a.s2h4n-card{position:relative;display:block;padding:1.5rem 1.6rem 1.5rem;color:var(--ink);text-decoration:none;box-shadow:var(--shadow);border-radius:6px 28px 6px 6px;transition:transform .2s ease,box-shadow .2s ease}
.s2h4n-learn>a.s2h4n-card::before{content:"";position:absolute;right:-3px;top:-3px;width:28px;height:28px;background:linear-gradient(225deg,var(--stock) 50%,var(--foot) 50%);border-left:3px solid var(--ink);border-bottom:3px solid var(--ink);border-radius:0 0 0 6px}
.s2h4n-learn>a.s2h4n-card:nth-child(2)::before{background:linear-gradient(225deg,var(--stock) 50%,var(--azure) 50%)}
.s2h4n-learn>a.s2h4n-card:nth-child(3)::before{background:linear-gradient(225deg,var(--stock) 50%,var(--coral) 50%)}
.s2h4n-learn>a.s2h4n-card:nth-child(2n){transform:translateY(.9rem)}
.s2h4n-learn>a.s2h4n-card h3{margin:0 0 .4rem;display:inline;background:linear-gradient(var(--foot),var(--foot)) 0 90%/0 .45em no-repeat;transition:background-size .4s ease;padding-right:2rem}
.s2h4n-learn>a.s2h4n-card p{margin:.7rem 0 0;color:var(--ink-soft)}
.s2h4n-learn>a.s2h4n-card:hover{transform:translateY(-4px);box-shadow:7px 8px 0 var(--ink)}
.s2h4n-learn>a.s2h4n-card:nth-child(2n):hover{transform:translateY(.4rem)}
.s2h4n-learn>a.s2h4n-card:hover h3{background-size:100% .45em}
@media (max-width:760px){.s2h4n-learn{grid-template-columns:1fr}.s2h4n-learn>a.s2h4n-card:nth-child(2n){transform:none}}

/* why: the house is dark, the curtain drawn */
.s2h4n-section--why{background:var(--ink);color:var(--white);margin-block:clamp(3rem,6vw,4.5rem) clamp(1.5rem,4vw,3rem);padding:5.5rem .5rem 4rem}
.s2h4n-section--why::before{content:"";position:absolute;left:0;right:0;top:0;height:26px;background:var(--valance) repeat-x left top}
.s2h4n-section--why .s2h4n-eyebrow{color:var(--ink)!important;background:var(--foot);border-color:var(--foot);box-shadow:3px 3px 0 var(--scarlet);margin-bottom:1.2rem}
.s2h4n-why{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);gap:1.6rem clamp(2rem,6vw,5rem);align-items:start}
.s2h4n-section--why h2{color:var(--foot);margin:0}
.s2h4n-why-text p{max-width:40rem;color:var(--white)}
.s2h4n-section--why a{color:var(--foot);font-weight:700}
.s2h4n-section--why a:hover{color:var(--ink)!important;background:var(--foot)!important}
.s2h4n-why-links{margin-top:1.8rem;padding:1.1rem 1.3rem;border:3px dashed var(--foot);border-radius:10px}
.s2h4n-why-links p{margin:0;max-width:none}
@media (max-width:900px){.s2h4n-why{grid-template-columns:1fr}}
.s2h4n-rates-note p{max-width:40rem;margin:0 0 1.6rem}

/* quote form: a box-office order slip under its own scalloped valance */
.s2h4n-quote{position:relative;margin:0;padding:clamp(2.6rem,4.5vw,3.2rem) clamp(1.4rem,3.5vw,2.4rem) clamp(1.4rem,3.5vw,2.4rem);background:var(--white);border:3px solid var(--ink);border-radius:12px;box-shadow:8px 8px 0 var(--foot)}
.s2h4n-quote::before{content:"";position:absolute;left:-3px;right:-3px;top:-3px;height:26px;background:var(--valance) repeat-x left top;border-radius:10px 10px 0 0}
.s2h4n-quote h2{font-size:clamp(2.3rem,4.2vw,3.2rem);margin-bottom:1.1rem}
.s2h4n-quote-block{max-width:62rem}
.s2h4n-fields{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 1.8rem}
@media (max-width:600px){.s2h4n-fields{grid-template-columns:1fr;gap:1.3rem}}
.s2h4n-field{display:flex;flex-direction:column;gap:.4rem;min-width:0}
.s2h4n-field--wide{grid-column:1/-1}
.s2h4n-field>span{font-weight:700;font-size:1.0625rem}
.s2h4n-field input:not([type=radio]),.s2h4n-field select,.s2h4n-field textarea{font:inherit;color:var(--ink);background:var(--stock);border:3px solid var(--ink);border-radius:8px;min-height:50px;padding:.5rem .8rem;width:100%}
.s2h4n-field select{appearance:none;-webkit-appearance:none;padding-right:2.6rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='12' viewBox='0 0 18 12' fill='none' stroke='%23241A24' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 2l7 8 7-8'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .9rem center}
.s2h4n-field textarea{min-height:9rem;resize:vertical}
.s2h4n-field input:focus,.s2h4n-field select:focus,.s2h4n-field textarea:focus{outline:none;border-color:var(--scarlet);background-color:#FFFBE6;box-shadow:0 0 0 4px var(--foot)}
.s2h4n-seg{display:flex;flex-wrap:wrap;gap:.6rem .7rem}
.s2h4n-seg label{position:relative;display:inline-flex;border:0;border-radius:0;padding:0;background:none;cursor:pointer;font-size:1.0625rem}
.s2h4n-seg input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.s2h4n-seg label span{display:inline-flex;align-items:center;min-height:46px;padding:0 1.1rem;margin:0;border:3px solid var(--ink);border-radius:8px;background:var(--white);color:var(--ink);font-weight:700;transition:background .15s ease,transform .15s ease}
.s2h4n-seg label:hover span{background:var(--azure-pale)}
.s2h4n-seg input:checked+span{background:var(--foot);color:var(--ink);margin:0;padding:0 1.1rem;border-radius:8px;box-shadow:3px 3px 0 var(--ink);transform:translate(-1px,-1px);outline:2px dashed var(--ink);outline-offset:-7px}
.s2h4n-seg label:has(input:checked){background:none;border:0}
.s2h4n-seg input:focus-visible+span{outline:3px solid var(--scarlet);outline-offset:3px}
.s2h4n-note{margin:1rem 0 1.2rem;font-size:1.0625rem;color:var(--ink-soft);max-width:36rem}
.s2h4n-status{margin-top:.9rem;min-height:1.6em;font-weight:700}
.s2h4n-status[data-tone=error]{color:var(--scarlet-deep)}
.s2h4n-results{margin-top:2rem}

/* results: stubs, the best one flagged in scarlet */
.s2h4n-summary{display:flex;flex-wrap:wrap;gap:.3rem 1.6rem;align-items:baseline;margin-bottom:1rem;font-size:1.0625rem;padding-bottom:.8rem;border-bottom:3px dashed var(--ink)}
.s2h4n-result{display:grid;grid-template-columns:1fr auto;gap:.6rem 1.4rem;align-items:center;border:3px solid var(--ink);border-radius:10px;padding:1rem 1.2rem;margin:0 0 .9rem;background:var(--white);box-shadow:4px 4px 0 var(--ink)}
.s2h4n-result--best{background:var(--foot-pale);border-left:12px solid var(--scarlet)}
.s2h4n-result strong{font-family:var(--hand);font-weight:400;font-size:1.6rem;line-height:1.1}
.s2h4n-result small{display:block;color:var(--ink-soft);font-size:1rem}
.s2h4n-price{font-family:var(--hand);font-weight:400;font-size:2.6rem;text-align:right;line-height:1;color:var(--scarlet-deep)}
.s2h4n-price small{display:block;font-family:var(--body);font-size:1rem;font-weight:700;text-align:right;margin-top:.3rem;color:var(--ink-soft)}
.s2h4n-tags{display:flex;flex-wrap:wrap;gap:.35rem .5rem;margin-top:.4rem}
.s2h4n-tag{font-size:1rem;font-weight:700;padding:0 .7rem;line-height:1.55;border-radius:6px;background:var(--azure);border:2px solid var(--ink);color:var(--ink)}
.s2h4n-tag--now{background:var(--scarlet);color:var(--white);border-color:var(--ink)}
.s2h4n-group{font-size:2.1rem;margin:1.8rem 0 .6rem}
.s2h4n-result .s2h4n-btn{grid-column:1/-1;justify-self:start}
@media (min-width:640px){.s2h4n-result{grid-template-columns:1fr auto auto}.s2h4n-result .s2h4n-btn{grid-column:auto}}
.s2h4n-applicant{margin:1rem 0 1.5rem;padding:.9rem 1.2rem;border:3px solid var(--ink);border-radius:8px;background:var(--azure);max-width:none}
.s2h4n-applicant h3{font-size:1.8rem;margin:0}
.s2h4n-disclosure{font-size:1rem;color:var(--ink-soft);border-top:3px dashed var(--ink);padding-top:.9rem;margin-top:1.5rem;max-width:none}
details.s2h4n-more{margin-top:.6rem;font-size:1.0625rem}
details.s2h4n-more summary{cursor:pointer;color:var(--link);font-weight:700;min-height:44px;display:flex;align-items:center}
.s2h4n-noexam{background:var(--azure-pale);border:3px solid var(--ink);border-radius:12px;box-shadow:6px 6px 0 var(--azure);padding:1.1rem 1.3rem .5rem;margin:0 0 2rem}
.s2h4n-group--noexam{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:0;font-size:2.1rem}
.s2h4n-noexam-badge{display:inline-block;background:var(--foot);color:var(--ink);font-family:var(--body);font-size:1rem;font-weight:700;letter-spacing:0;text-transform:none;padding:.15rem .9rem;border:3px solid var(--ink);border-radius:6px}
.s2h4n-noexam-note{margin-bottom:.9rem;color:var(--ink)}
.s2h4n-result--noexam{border-color:var(--ink);background:var(--white)}
.s2h4n-tag--noexam{background:var(--foot);color:var(--ink);border-color:var(--ink)}
.s2h4n-tag--usually{background:var(--white);color:var(--ink);border-color:var(--ink)}
.s2h4n-noexam-note+.s2h4n-noexam-note{margin-top:1rem;padding-top:.9rem;border-top:3px dashed var(--ink)}

/* rates table: a ruled program page, the lowest price swiped in footlight yellow */
.s2h4n-table-wrap{overflow-x:auto;margin-top:.6rem;background:var(--white);border:3px solid var(--ink);border-radius:10px;box-shadow:var(--shadow);padding:.6rem 1.2rem}
.s2h4n-table{width:100%;border-collapse:collapse;font-size:1.0625rem;font-variant-numeric:tabular-nums lining-nums;min-width:30rem}
.s2h4n-table th,.s2h4n-table td{padding:.85rem 1rem .85rem 0;border-bottom:2px dashed #8F8499;text-align:left}
.s2h4n-table tbody tr:last-child td{border-bottom:0}
.s2h4n-table th{font-family:var(--hand);font-weight:400;font-size:1.4rem;line-height:1.15;letter-spacing:.01em;text-transform:none;color:var(--ink);border-bottom:3px solid var(--ink)}
.s2h4n-table td:first-child{font-weight:700}
.s2h4n-table th:not(:first-child),.s2h4n-table td:not(:first-child){text-align:right}
.s2h4n-table td:nth-child(2){font-weight:700;background:linear-gradient(transparent 58%,var(--foot) 58% 94%,transparent 94%) right .6rem center/4.8rem 100% no-repeat}
.s2h4n-table tbody tr:hover td{background-color:var(--azure-pale)}
@media (max-width:600px){.s2h4n-table{min-width:0}.s2h4n-table th,.s2h4n-table td{padding-right:.5rem}.s2h4n-table th{vertical-align:bottom;font-size:1.2rem}.s2h4n-table-wrap{padding:.4rem .7rem}}

/* inner pages */
.s2h4n-article{max-width:50rem;margin-inline:auto}
.s2h4n-article>*{max-width:46rem}
.s2h4n-article h1{font-size:clamp(2.8rem,5.6vw,4.4rem);display:block;margin-bottom:.5em}
.s2h4n-article h2{margin-top:1.8em;font-size:clamp(2.1rem,3.6vw,2.8rem)}
.s2h4n-article figure{margin:0 0 2rem;max-width:46rem}
.s2h4n-article figcaption{font-size:1rem;color:var(--ink-soft);margin-top:.5rem}
.s2h4n-article img{border:3px solid var(--ink);border-radius:8px;box-shadow:var(--shadow)}
.s2h4n-article .s2h4n-lead{font-size:1.25rem;margin-bottom:1.4rem}
.s2h4n-section>.s2h4n-wrap>h1,.s2h4n-article>h1{display:block}
.s2h4n-section>.s2h4n-wrap>h1{background:linear-gradient(176deg,transparent 56%,var(--foot) 56% 94%,transparent 94%) 0 0/fit-content 100% no-repeat}
.s2h4n-section>.s2h4n-wrap>.s2h4n-lead{margin-bottom:2rem}
.s2h4n-sources{font-size:1.0625rem;border-top:3px dashed var(--ink);padding-top:1rem;margin-top:2rem}.s2h4n-sources ol{padding-left:1.4rem}
.s2h4n-faq details{background:var(--white);border:3px solid var(--ink);border-left-width:12px;border-radius:10px;padding:.5rem 1.2rem;margin-bottom:1rem;box-shadow:4px 4px 0 var(--ink)}
.s2h4n-faq summary{cursor:pointer;font-family:var(--hand);font-weight:400;font-size:1.65rem;line-height:1.2;min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:1rem;list-style:none;padding:.4rem 0}
.s2h4n-faq summary::-webkit-details-marker{display:none}
.s2h4n-faq summary::after{content:"";flex:none;width:.8rem;height:.8rem;border-right:4px solid var(--scarlet);border-bottom:4px solid var(--scarlet);transform:rotate(45deg) translate(-3px,-3px);transition:transform .2s ease}
.s2h4n-faq details[open] summary::after{transform:rotate(-135deg) translate(-3px,-3px)}
.s2h4n-faq details[open]{background:#FFFBE6;border-left-color:var(--scarlet)}
.s2h4n-faq summary:hover{color:var(--scarlet-deep)}
.s2h4n-faq details p{margin:.4rem 0 .8rem}
.s2h4n-calc{background:var(--azure-pale);border:3px solid var(--ink);border-radius:12px;padding:1.2rem 1.4rem;margin:1.8rem 0;box-shadow:6px 6px 0 var(--azure)}
.s2h4n-calc h2{margin-top:0;font-size:2.2rem!important}
.s2h4n-calc output{display:block;margin-top:1.2rem;font-family:var(--hand);font-weight:400;font-size:3.2rem;line-height:1.1;color:var(--scarlet-deep)}
.s2h4n-apply-shell{background:var(--white);border:3px solid var(--ink);border-radius:16px;padding:1rem;min-height:600px;margin-top:2rem;box-shadow:var(--shadow)}
.s2h4n-apply-shell iframe{width:100%;border:0}
[data-reveal]{opacity:1;transform:none}[data-reveal].s2h4n-in{opacity:1;transform:none}

/* footer: the house lights down, a row of marquee bulbs along the top */
.s2h4n-foot{margin-top:clamp(1rem,3vw,2rem);background:var(--ink);color:#F1EEF5;padding:clamp(4rem,6vw,4.8rem) 0 2.5rem;border:0;font-size:1.0625rem;position:relative}
.s2h4n-foot::before{content:"";position:absolute;left:0;right:0;top:12px;height:16px;background:radial-gradient(circle at center,var(--foot) 0 5px,transparent 5.5px) 0 0/30px 16px repeat-x}
.s2h4n-foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:2.5rem}
.s2h4n-foot a{color:var(--foot);font-weight:700}
.s2h4n-foot a:hover{color:var(--ink)!important;background:var(--foot)!important}
.s2h4n-foot .s2h4n-brand{color:#fff;font-size:1.9rem}
.s2h4n-foot .s2h4n-brand span{background:linear-gradient(transparent 62%,var(--scarlet) 62% 94%,transparent 94%)}
.s2h4n-foot p{margin:.6rem 0 0;font-size:1.0625rem;max-width:none}
.s2h4n-foot nav{display:flex;flex-direction:column;align-items:flex-start}
.s2h4n-foot nav strong{font-family:var(--hand);font-weight:400;font-size:1.75rem;color:#fff;margin-bottom:.4rem}
.s2h4n-foot nav a{display:inline-flex;align-items:center;min-height:44px;margin:0}
.s2h4n-foot p[data-copy=legal]{margin-top:2.6rem!important;font-size:1rem!important;line-height:1.7;max-width:48rem;color:#DAD3E3}
@media (max-width:900px){.s2h4n-foot-grid{grid-template-columns:1fr 1fr}.s2h4n-foot-grid>div:first-child{grid-column:1/-1}}
@media (max-width:560px){.s2h4n-foot-grid{grid-template-columns:1fr}}

/* narrow screens */
@media (max-width:960px){
.s2h4n-hero-grid{grid-template-columns:minmax(0,1fr)}
.s2h4n-stage{min-height:19rem;order:-1;justify-content:flex-start}
.s2h4n-facade{width:min(78%,22rem);margin-right:0}
.s2h4n-doodle{right:max(0rem,calc(100% - 34rem))}
}
@media (max-width:600px){
.s2h4n-brand{font-size:1.75rem}
.s2h4n-links{gap:0 1rem}
.s2h4n-btn--primary{width:100%}
.s2h4n-btn{justify-content:center}
.s2h4n-trust{grid-template-columns:1fr}
.s2h4n-stage{min-height:15rem}
.s2h4n-facade{width:70%}
.s2h4n-doodle{width:7.6rem}
.s2h4n-arrow{width:6rem;right:3.6rem;bottom:8rem}
.s2h4n-cols{grid-template-columns:1fr}
.s2h4n-wx{margin-top:3rem}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}html{scroll-behavior:auto}[data-reveal]{opacity:1;transform:none}}
.s2h4n-section--deep{background:var(--ink);color:var(--white)}.s2h4n-section--deep h2,.s2h4n-section--deep a{color:var(--foot)}
