:root{--teal:#0f3d3e;--teal2:#16595a;--ivory:#fbf8f1;--sand:#efe6d3;--gold:#c9a45c;--ink:#26302f;--mut:#566361;--white:#fff;--r:14px;--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:76px}
body{margin:0;font:17px/1.65 var(--sans);color:var(--ink);background:var(--ivory);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--teal2)}
h1,h2,h3{font-family:var(--serif);line-height:1.15;color:var(--teal);margin:0 0 .5em;font-weight:600}
h1{font-size:clamp(2.1rem,6vw,3.9rem);color:#fff}
h2{font-size:clamp(1.65rem,4vw,2.5rem)}
h3{font-size:1.25rem}
p{margin:0 0 1em}
.wrap{width:min(1160px,100% - 32px);margin-inline:auto}
.narrow{width:min(820px,100% - 32px)}
.center{text-align:center}
.skip{position:absolute;left:-999px;top:8px;background:#fff;padding:8px 12px;z-index:100}.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.btn{display:inline-block;border:2px solid transparent;border-radius:999px;padding:.85em 1.6em;font:600 1rem var(--sans);cursor:pointer;text-decoration:none;text-align:center;transition:transform .2s,background .2s}
.btn:hover{transform:translateY(-2px)}
.btn-sm{padding:.55em 1.2em;font-size:.95rem}
.btn-block{width:100%}
.btn-gold{background:var(--gold);color:#1d2a29}.btn-gold:hover{background:#d8b56d}
.btn-teal{background:var(--teal);color:#fff}.btn-teal:hover{background:var(--teal2)}
.btn-ghost{border-color:rgba(255,255,255,.7);color:#fff}.btn-ghost:hover{background:rgba(255,255,255,.12)}
.btn-line{border-color:var(--teal);color:var(--teal);background:transparent}
.btn-wa{background:#1f9d55;color:#fff}.btn-wa:hover{background:#188246}
.site-header{position:fixed;inset:0 0 auto 0;z-index:50;transition:background .3s,box-shadow .3s}
.site-header.solid{background:rgba(15,61,62,.97);box-shadow:0 2px 14px rgba(0,0,0,.18)}
.bar{display:flex;align-items:center;justify-content:space-between;height:64px}
.logo{font:600 1.25rem var(--serif);color:#fff;text-decoration:none;letter-spacing:.02em}
.nav{display:none;position:absolute;top:64px;left:0;right:0;background:var(--teal);padding:12px 16px 20px;flex-direction:column;gap:4px}
.nav.open{display:flex}
.nav a{color:#fff;text-decoration:none;padding:10px 4px;font-size:.98rem}
.nav .btn{margin-top:8px}
.menu-btn{background:none;border:0;padding:10px;cursor:pointer;display:grid;gap:5px}
.menu-btn span{width:24px;height:2px;background:#fff;display:block}
@media(min-width:960px){.menu-btn{display:none}.nav{display:flex;position:static;flex-direction:row;align-items:center;gap:22px;padding:0;background:none}.nav a{padding:0;font-size:.92rem}.nav .btn{margin:0}}
.hero{position:relative;min-height:92vh;display:flex;align-items:center;color:#fff;background:linear-gradient(160deg,#0b2d2e 0%,#16595a 55%,#d9c9a0 140%);overflow:hidden}
.hero-bg{position:absolute;inset:0}
.hero-bg img,.hero-bg svg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,26,27,.55),rgba(7,26,27,.35) 55%,rgba(7,26,27,.65))}
.hero-in{position:relative;z-index:2;padding:110px 0 70px;max-width:760px;margin-left:max(16px,calc((100% - 1160px)/2))}
.eyebrow{letter-spacing:.2em;font-size:.78rem;color:var(--gold);font-weight:700}
.lead{font-size:1.15rem;color:#f1ece0;max-width:60ch}
.note-hero{font-size:.95rem;color:#e3dccb}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.center-a{justify-content:center}
.sec{padding:84px 0}
.sand{background:var(--sand)}
.teal{background:var(--teal);color:#e8efee}.teal h2,.teal h3{color:#fff}
.kicker{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:.6em}.kicker.light{color:var(--gold)}
.head{max-width:760px;margin-bottom:38px}.center .head,.head.center{margin-inline:auto}
.fine{font-size:.88rem;color:var(--mut)}.fine.light{color:#c8d3d1}
.split{display:grid;gap:36px;align-items:center}
@media(min-width:900px){.split{grid-template-columns:1.15fr .85fr}}
.photo{position:relative;margin:0;border-radius:var(--r);overflow:hidden;min-height:260px;background:linear-gradient(150deg,#16595a,#c9a45c 160%)}
.photo::before{content:attr(data-ph);position:absolute;inset:auto auto 14px 14px;color:rgba(255,255,255,.85);font:600 .8rem var(--sans);letter-spacing:.08em;text-transform:uppercase}
.photo img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.photo figcaption{position:absolute;z-index:2;left:12px;bottom:10px;font-size:.75rem;color:#fff;background:rgba(0,0,0,.45);padding:2px 8px;border-radius:6px}
.photo.sm{min-height:190px;border-radius:var(--r) var(--r) 0 0}
.zph{min-height:0;aspect-ratio:4/3;border-radius:10px;margin-bottom:12px}
.grid3,.grid4,.grid5{display:grid;gap:20px}
@media(min-width:700px){.grid4{grid-template-columns:repeat(2,1fr)}.grid5{grid-template-columns:repeat(2,1fr)}}
@media(min-width:900px){.grid3{grid-template-columns:repeat(3,1fr)}.grid4{grid-template-columns:repeat(4,1fr)}.grid5{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1100px){.grid5{grid-template-columns:repeat(5,1fr)}}
.card,.ocard{background:#fff;border-radius:var(--r);padding:26px;box-shadow:0 6px 22px rgba(15,61,62,.07)}
.ocard{background:rgba(255,255,255,.08);box-shadow:none;border:1px solid rgba(255,255,255,.18)}
.ocard p{color:#dbe6e4;font-size:.96rem}
.ico{width:34px;height:34px;stroke:var(--gold);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;margin-bottom:12px}
.card p{font-size:.96rem;margin:0}
.tcard{background:#fff;border-radius:var(--r);box-shadow:0 6px 22px rgba(15,61,62,.08);display:flex;flex-direction:column;overflow:hidden}
.tbody{padding:22px;display:flex;flex-direction:column;flex:1}
.tbody ul{padding-left:18px;margin:0 0 18px;color:var(--mut);font-size:.94rem}
.tbody .btn{margin-top:auto}
.bcard{display:flex;flex-direction:column;gap:10px;text-align:left;background:#fff;border:2px solid transparent;border-radius:var(--r);padding:24px;cursor:pointer;font:inherit;color:var(--ink);transition:border-color .2s,transform .2s}
.bcard:hover{border-color:var(--gold);transform:translateY(-3px)}
.amt{font:600 1.35rem var(--serif);color:var(--teal)}
.go{color:var(--teal2);font-weight:600;margin-top:auto}
.callout{margin-top:32px;background:#fff;border-left:5px solid var(--gold);padding:18px 22px;border-radius:10px;font-size:.97rem}
.zcard{background:#fff;border-radius:var(--r);padding:12px 12px 20px;box-shadow:0 6px 22px rgba(15,61,62,.07)}
.zcard h3,.zcard p,.zcard .link{margin-inline:6px}.zcard p{font-size:.92rem;color:var(--mut)}
.link{background:none;border:0;padding:0;color:var(--teal2);font:600 .92rem var(--sans);cursor:pointer;text-decoration:underline;text-align:left}
.steps{list-style:none;padding:0;margin:0;display:grid;gap:20px}
@media(min-width:800px){.steps{grid-template-columns:repeat(4,1fr)}}
.steps li{background:#fff;border-radius:var(--r);padding:26px;box-shadow:0 6px 22px rgba(15,61,62,.07)}
.steps p{font-size:.95rem;margin:0}
.n{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--teal);color:var(--gold);font:600 1.2rem var(--serif);margin-bottom:12px}
.form-sec{background:linear-gradient(180deg,var(--ivory),var(--sand))}
.form-wrap{display:grid;gap:36px}
@media(min-width:900px){.form-wrap{grid-template-columns:.8fr 1.2fr;align-items:start}}
.form{background:#fff;border-radius:var(--r);padding:28px;box-shadow:0 14px 40px rgba(15,61,62,.12)}
.field{margin-bottom:16px}.row2{display:grid;gap:0 16px}
@media(min-width:600px){.row2{grid-template-columns:1fr 1fr}}
label{display:block;font-weight:600;font-size:.92rem;margin-bottom:5px}
input,select,textarea{width:100%;font:inherit;padding:.7em .85em;border:1.5px solid #c9d1cf;border-radius:10px;background:#fff;color:var(--ink)}
input:focus,select:focus,textarea:focus{border-color:var(--teal2)}
.field.check{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:start}
.field.check input{width:20px;height:20px;margin-top:3px}.field.check label{font-weight:400;margin:0}
.field.check .err{grid-column:2}
.invalid input,.invalid select{border-color:#b3261e}
.err{color:#b3261e;font-size:.85rem;margin:4px 0 0;min-height:0}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.status{margin:14px 0 0;font-weight:600}.status.ok{color:#17653a}.status.bad{color:#b3261e}
.faq .qa{border-bottom:1px solid #d9d2c0}
.faq h3{margin:0;font-family:var(--sans)}
.faq button{all:unset;box-sizing:border-box;display:flex;justify-content:space-between;gap:16px;width:100%;padding:20px 4px;cursor:pointer;font:600 1.05rem var(--sans);color:var(--teal)}
.faq button::after{content:"+";font-size:1.5rem;line-height:1;color:var(--gold)}
.faq button[aria-expanded="true"]::after{content:"–"}
.faq button:focus-visible{outline:3px solid var(--gold)}
.ans{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s}
.ans>div{overflow:hidden}.ans p{padding:0 4px 18px;color:var(--mut);margin:0}
.ans.open{grid-template-rows:1fr}
.final{position:relative;padding:100px 0;background:linear-gradient(150deg,#0b2d2e,#16595a 60%,#c9a45c 170%);color:#fff;overflow:hidden}
.final::after{content:"";position:absolute;inset:0;background:rgba(7,26,27,.5)}
.final-in{position:relative;z-index:2;max-width:760px}.final h2{color:#fff}
.footer{background:#0b2d2e;color:#d6e0de;padding:48px 0 90px}
.fgrid{display:grid;gap:28px}@media(min-width:760px){.fgrid{grid-template-columns:2fr 1fr 1fr}}
.footer a{color:#e8d9b0}.fh{font:700 .8rem var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.wa-float{position:fixed;right:16px;bottom:16px;z-index:60;width:56px;height:56px;border-radius:50%;background:#1f9d55;display:grid;place-items:center;box-shadow:0 8px 22px rgba(0,0,0,.28)}
.wa-float svg{width:30px;height:30px;fill:#fff}
.cookie{position:fixed;left:16px;right:88px;bottom:16px;z-index:70;background:#fff;border-radius:12px;padding:14px 16px;box-shadow:0 10px 30px rgba(0,0,0,.2);font-size:.9rem;max-width:560px}
.cookie[hidden]{display:none}.cookie p{margin:0 0 10px}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s,transform .6s}
.reveal.in{opacity:1;transform:none}
.doc{padding:100px 0 60px}.doc h1{color:var(--teal);font-size:2rem}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}

