:root{--navy:#15233f;--navy-deep:#0d1729;--navy-soft:#233458;--ivory:#f6f1e7;--ivory-pure:#fbf8f2;--silver:#c7ccd4;--silver-deep:#9aa2ae;--burgundy:#6b1f2e;--burgundy-soft:#8a2c3d;--ink:#1b2436;--muted:#5d6573;--line:#e3dccd;--shadow:0 24px 60px -32px #0d172973;--serif:"Iowan Old Style", "Palatino Linotype", Palatino, "Georgia", "Times New Roman", serif;--sans:"Helvetica Neue", "Inter", system-ui, -apple-system, "Segoe UI", Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--sans);color:var(--ink);background:var(--ivory);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.6}h1,h2,h3,h4{font-family:var(--serif);color:var(--navy);letter-spacing:-.01em;font-weight:500;line-height:1.12}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.eyebrow{font-family:var(--sans);text-transform:uppercase;letter-spacing:.32em;color:var(--burgundy);font-size:.72rem;font-weight:600}.eyebrow.light{color:var(--silver)}.shell{width:min(1180px,92vw);margin-inline:auto}.shell-narrow{width:min(760px,92vw);margin-inline:auto}.btn{letter-spacing:.04em;cursor:pointer;border:1px solid #0000;border-radius:2px;align-items:center;gap:.5rem;padding:.85rem 1.6rem;font-size:.86rem;font-weight:600;transition:background .2s,color .2s,border-color .2s;display:inline-flex}.btn-primary{background:var(--navy);color:var(--ivory-pure)}.btn-primary:hover{background:var(--navy-deep)}.btn-outline{color:var(--navy);border-color:var(--navy);background:0 0}.btn-outline:hover{background:var(--navy);color:var(--ivory-pure)}.btn-ghost{color:var(--ivory);background:0 0;border-color:#f6f1e773}.btn-ghost:hover{background:var(--ivory);color:var(--navy)}.site-header{z-index:40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#f6f1e7eb;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:1.5rem;padding:1.05rem 0;display:flex}.brand{align-items:center;gap:.7rem;display:flex}.brand-mark{flex:none;width:34px;height:34px}.brand-text{flex-direction:column;line-height:1.05;display:flex}.brand-name{font-family:var(--serif);color:var(--navy);letter-spacing:.02em;font-size:1.12rem}.brand-sub{letter-spacing:.26em;text-transform:uppercase;color:var(--muted);font-size:.62rem}.nav{align-items:center;gap:1.4rem;display:flex}.nav a{color:var(--ink);letter-spacing:.02em;border-bottom:1px solid #0000;padding-bottom:2px;font-size:.84rem;font-weight:500;transition:border-color .2s,color .2s}.nav a:hover{color:var(--navy);border-color:var(--burgundy)}.nav-cta{display:inline-flex}.hero{background:var(--navy-deep);color:var(--ivory);position:relative;overflow:hidden}.hero-grid{grid-template-columns:1.05fr .95fr;align-items:stretch;gap:0;display:grid}.hero-copy{flex-direction:column;justify-content:center;max-width:620px;padding:5.5rem 4vw 5rem;display:flex}.hero h1{color:var(--ivory-pure);margin:1.3rem 0 1.2rem;font-size:clamp(2.6rem,5vw,4rem)}.hero p.lede{color:var(--silver);max-width:46ch;margin-bottom:2rem;font-size:1.08rem}.hero-actions{flex-wrap:wrap;gap:.9rem;display:flex}.hero-figure{min-height:520px;position:relative}.hero-figure img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero-meta{flex-wrap:wrap;gap:2.4rem;margin-top:2.6rem;display:flex}.hero-meta div span{display:block}.hero-meta .num{font-family:var(--serif);color:var(--ivory-pure);font-size:1.7rem}.hero-meta .lbl{letter-spacing:.18em;text-transform:uppercase;color:var(--silver-deep);margin-top:.2rem;font-size:.72rem}.section{padding:5.5rem 0}.section.tight{padding:4rem 0}.section-head{max-width:640px;margin-bottom:3rem}.section-head.center{text-align:center;margin-inline:auto}.section-head h2{margin:.9rem 0 1rem;font-size:clamp(1.9rem,3.4vw,2.7rem)}.section-head p{color:var(--muted);font-size:1.02rem}.band-navy{background:var(--navy);color:var(--ivory)}.band-navy h2{color:var(--ivory-pure)}.band-navy .section-head p{color:var(--silver)}.band-ivory{background:var(--ivory-pure)}.steps{grid-template-columns:repeat(3,1fr);gap:1.6rem;display:grid}.step{background:var(--ivory-pure);border:1px solid var(--line);border-radius:3px;padding:2rem 1.8rem}.band-navy .step{background:var(--navy-soft);border-color:#c7ccd42e}.step .idx{font-family:var(--serif);color:var(--burgundy-soft);margin-bottom:.7rem;font-size:1.4rem;display:block}.band-navy .step .idx{color:var(--silver)}.step h3{margin-bottom:.5rem;font-size:1.18rem}.band-navy .step h3{color:var(--ivory-pure)}.step p{color:var(--muted);font-size:.92rem}.band-navy .step p{color:var(--silver)}.split{grid-template-columns:1fr 1fr;align-items:center;gap:3.5rem;display:grid}.split.reverse .split-media{order:2}.split-media{box-shadow:var(--shadow);aspect-ratio:3/2;border-radius:4px;position:relative;overflow:hidden}.split-media img{object-fit:cover;width:100%;height:100%}.split-copy h2{margin-bottom:1rem}.split-copy p{color:var(--muted);margin-bottom:1rem}.list-check{gap:.7rem;margin:1.4rem 0;list-style:none;display:grid}.list-check li{color:var(--ink);padding-left:1.5rem;font-size:.95rem;position:relative}.list-check li:before{content:"";background:var(--burgundy);border-radius:50%;width:8px;height:8px;position:absolute;top:.55em;left:0}.grid-3{grid-template-columns:repeat(3,1fr);gap:1.6rem;display:grid}.grid-2{grid-template-columns:repeat(2,1fr);gap:1.6rem;display:grid}.card{background:var(--ivory-pure);border:1px solid var(--line);border-radius:4px;flex-direction:column;transition:transform .2s,box-shadow .2s;display:flex;overflow:hidden}.card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.card-media{aspect-ratio:4/3;overflow:hidden}.card-media img{object-fit:cover;width:100%;height:100%}.card-body{flex-direction:column;flex:1;gap:.5rem;padding:1.4rem 1.4rem 1.6rem;display:flex}.card-cat{letter-spacing:.2em;text-transform:uppercase;color:var(--burgundy);font-size:.68rem;font-weight:600}.card-body h3{font-size:1.18rem}.card-body p{color:var(--muted);flex:1;font-size:.9rem}.card-price{color:var(--navy);margin-top:.3rem;font-size:.92rem;font-weight:600}.gen{grid-template-columns:.9fr 1.1fr;align-items:start;gap:2.5rem;display:grid}.gen-form{background:var(--ivory-pure);border:1px solid var(--line);border-radius:4px;padding:2rem;position:sticky;top:90px}.field{margin-bottom:1.4rem}.field label{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:.5rem;font-size:.78rem;font-weight:600;display:block}.field input,.field select{border:1px solid var(--line);background:var(--ivory);width:100%;font-family:var(--sans);color:var(--ink);border-radius:2px;padding:.7rem .85rem;font-size:.95rem}.field input:focus,.field select:focus{border-color:var(--navy-soft);outline:none}.choice-row{flex-wrap:wrap;gap:.5rem;display:flex}.choice{text-align:center;border:1px solid var(--line);background:var(--ivory);cursor:pointer;border-radius:2px;flex:1;min-width:90px;padding:.6rem .5rem;font-size:.85rem;transition:all .18s}.choice.active{background:var(--navy);color:var(--ivory-pure);border-color:var(--navy)}.board{background:var(--navy);color:var(--ivory);border-radius:4px;overflow:hidden}.board-figure{aspect-ratio:16/9;overflow:hidden}.board-figure img{object-fit:cover;width:100%;height:100%}.board-body{padding:2rem}.board-body h3{color:var(--ivory-pure);margin-bottom:.6rem;font-size:1.5rem}.board-intro{color:var(--silver);margin-bottom:1.6rem;font-size:.95rem}.board-block{margin-bottom:1.5rem}.board-block h4{color:var(--silver);font-family:var(--sans);letter-spacing:.2em;text-transform:uppercase;margin-bottom:.6rem;font-size:.72rem}.board-block ul{gap:.45rem;list-style:none;display:grid}.board-block li{color:var(--ivory);padding-left:1.3rem;font-size:.93rem;position:relative}.board-block li:before{content:"";background:var(--silver);border-radius:50%;width:6px;height:6px;position:absolute;top:.6em;left:0}.board-note{color:var(--silver);border-top:1px solid #c7ccd433;padding-top:1.2rem;font-size:.9rem;font-style:italic}.plans{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:1.6rem;display:grid}.plan{background:var(--ivory-pure);border:1px solid var(--line);border-radius:4px;flex-direction:column;padding:2.2rem 1.9rem;display:flex}.plan.featured{background:var(--navy);color:var(--ivory);border-color:var(--navy)}.plan.featured h3,.plan.featured .plan-price{color:var(--ivory-pure)}.plan.featured .plan-desc,.plan.featured .plan-features li{color:var(--silver)}.plan-name{letter-spacing:.2em;text-transform:uppercase;color:var(--burgundy);font-size:.72rem;font-weight:600}.plan.featured .plan-name{color:var(--silver)}.plan h3{margin:.6rem 0 .3rem;font-size:1.5rem}.plan-price{font-family:var(--serif);color:var(--navy);margin:.6rem 0;font-size:2.2rem}.plan-price small{font-family:var(--sans);color:var(--muted);letter-spacing:.05em;font-size:.8rem}.plan-desc{color:var(--muted);margin-bottom:1.4rem;font-size:.9rem}.plan-features{flex:1;gap:.6rem;margin-bottom:1.8rem;list-style:none;display:grid}.plan-features li{color:var(--ink);padding-left:1.4rem;font-size:.9rem;position:relative}.plan-features li:before{content:"";background:var(--burgundy);border-radius:50%;width:7px;height:7px;position:absolute;top:.5em;left:0}.plan.featured .plan-features li:before{background:var(--silver)}.notice{background:var(--ivory);border:1px solid var(--line);border-left:3px solid var(--burgundy);color:var(--ink);border-radius:3px;padding:1.2rem 1.4rem;font-size:.9rem}.notice strong{color:var(--navy)}.form-card{background:var(--ivory-pure);border:1px solid var(--line);border-radius:4px;padding:2.4rem}.form-row{grid-template-columns:1fr 1fr;gap:1.2rem;display:grid}.form-status{color:var(--burgundy);margin-top:1rem;font-size:.9rem}textarea{border:1px solid var(--line);background:var(--ivory);width:100%;font-family:var(--sans);color:var(--ink);resize:vertical;border-radius:2px;min-height:130px;padding:.7rem .85rem;font-size:.95rem}textarea:focus{border-color:var(--navy-soft);outline:none}.prose h1{margin-bottom:.6rem;font-size:clamp(2rem,4vw,2.8rem)}.prose .updated{color:var(--muted);margin-bottom:2.4rem;font-size:.85rem}.prose h2{margin:2.2rem 0 .8rem;font-size:1.4rem}.prose p,.prose li{color:var(--ink);margin-bottom:.9rem;font-size:.98rem}.prose ul{margin-bottom:1rem;padding-left:1.3rem}.prose a{color:var(--burgundy);text-decoration:underline}.detail-list{gap:.8rem;list-style:none;display:grid}.detail-list li{border-bottom:1px solid var(--line);justify-content:space-between;gap:1rem;padding-bottom:.8rem;font-size:.92rem;display:flex}.detail-list .k{color:var(--muted)}.detail-list .v{color:var(--navy);text-align:right;font-weight:500}.site-footer{background:var(--navy-deep);color:var(--silver);padding:4rem 0 2rem}.footer-grid{border-bottom:1px solid #c7ccd429;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:2.5rem;padding-bottom:2.5rem;display:grid}.footer-grid h4{color:var(--ivory);font-family:var(--sans);letter-spacing:.2em;text-transform:uppercase;margin-bottom:1.1rem;font-size:.72rem}.footer-grid a,.footer-grid p{color:var(--silver);margin-bottom:.55rem;font-size:.88rem;display:block}.footer-grid a:hover{color:var(--ivory)}.footer-brand .brand-name{color:var(--ivory);font-size:1.2rem}.footer-brand p{max-width:30ch}.footer-legal{color:var(--silver-deep);flex-wrap:wrap;justify-content:space-between;gap:1rem;padding-top:1.8rem;font-size:.8rem;display:flex}.intro-banner{background:var(--ivory-pure);border-bottom:1px solid var(--line);padding:4.5rem 0 2.5rem}.intro-banner h1{max-width:18ch;margin:1rem 0;font-size:clamp(2.2rem,4.4vw,3.2rem)}.intro-banner p{color:var(--muted);max-width:54ch;font-size:1.05rem}.tag-row{flex-wrap:wrap;gap:.5rem;margin-bottom:2.5rem;display:flex}.tag{border:1px solid var(--line);color:var(--muted);background:var(--ivory-pure);cursor:pointer;border-radius:40px;padding:.45rem .9rem;font-size:.8rem}.tag.active{background:var(--navy);color:var(--ivory-pure);border-color:var(--navy)}@media (max-width:900px){.hero-grid{grid-template-columns:1fr}.hero-figure{order:-1;min-height:300px}.hero-copy{padding:3.5rem 6vw}.steps,.grid-3,.plans,.grid-2{grid-template-columns:1fr}.split{grid-template-columns:1fr;gap:2rem}.split.reverse .split-media{order:0}.gen{grid-template-columns:1fr}.gen-form{position:static}.nav{display:none}.footer-grid{grid-template-columns:1fr 1fr}.form-row{grid-template-columns:1fr}}
