:root{--ivory:#FBF7F2;--char:#24211F;--blush:#E9C9C1;--champ:#C8A97E;--mute:#6f6862;--serif:"Cormorant Garamond",Georgia,serif;--sans:Inter,system-ui,sans-serif}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}
body{background:var(--ivory);color:var(--char);font:400 16px/1.6 var(--sans)}
a{color:inherit;text-decoration:none}
.draft-bar{background:var(--char);color:var(--blush);text-align:center;font-size:12px;letter-spacing:.1em;padding:4px;text-transform:uppercase}
.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 5vw;background:rgba(251,247,242,.85);backdrop-filter:blur(12px);border-bottom:1px solid #eadfd6}
.logo{font:400 26px var(--serif);letter-spacing:.01em}.nav nav{display:flex;gap:28px;font-size:14px}.nav nav a:hover{color:var(--champ)}
.pill{display:inline-block;border-radius:999px;padding:12px 24px;font:500 14px var(--sans);border:1px solid var(--char);cursor:pointer;transition:.25s;background:none}
.pill-dark{background:var(--char);color:var(--ivory)}.pill-dark:hover{background:var(--champ);border-color:var(--champ)}.pill-ghost:hover{background:var(--blush);border-color:var(--blush)}
h1,h2{font-family:var(--serif);font-weight:300;line-height:1.05}h1 em,h2 em{font-style:italic}h1 strong,h2 strong{font-family:var(--sans);font-weight:500;letter-spacing:-.03em}
h1{font-size:clamp(44px,7vw,92px)}h2{font-size:clamp(34px,4.5vw,58px);margin-bottom:40px}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;color:var(--mute);margin-bottom:16px}
.hero{position:relative;overflow:hidden;display:grid;grid-template-columns:1.2fr 1fr;gap:5vw;align-items:center;padding:90px 5vw 70px}
.lede{max-width:560px;font-size:18px;color:var(--mute);margin:26px 0}.ctas{display:flex;gap:12px;flex-wrap:wrap}
.badges{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px;margin-top:34px}.badges li{border:1px solid #e3d6cb;border-radius:999px;padding:6px 14px;font-size:12px;color:var(--mute);background:#fff8}
.shape{position:absolute;border-radius:50%;filter:blur(2px);opacity:.55;animation:float 12s ease-in-out infinite}
.s1{width:320px;height:320px;background:radial-gradient(var(--blush),transparent 70%);top:-80px;right:30%}
.s2{width:180px;height:180px;background:radial-gradient(var(--champ),transparent 70%);bottom:20px;left:-40px;animation-delay:-4s}
.s3{width:90px;height:90px;border-radius:30% 70% 60% 40%;background:var(--blush);top:40%;right:4%;animation-delay:-8s}
@keyframes float{50%{transform:translate(20px,-24px) rotate(10deg)}}
.collage{position:relative;height:480px}
.tile{position:absolute;border-radius:28px;box-shadow:0 30px 60px -30px #0003;display:flex;align-items:flex-end;padding:18px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--char);animation:rise 1s both}
.tile span{background:#fffc;border-radius:999px;padding:5px 12px}
.t1{width:56%;height:62%;left:0;top:6%;background:linear-gradient(150deg,#f3ddd6,var(--blush) 60%,#d9aea3)}
.t2{width:40%;height:44%;right:0;top:0;background:linear-gradient(200deg,#efe3d0,var(--champ));animation-delay:.15s}
.t3{width:40%;height:40%;right:4%;bottom:0;background:var(--char);color:var(--ivory);animation-delay:.3s}
.t4{width:46%;height:30%;left:10%;bottom:0;background:linear-gradient(120deg,#fff,#f1e6dc);animation-delay:.45s}
@keyframes rise{from{opacity:0;transform:translateY(40px)}}
.marquee-wrap{padding:30px 0;border-block:1px solid #eadfd6}.marquee-label{text-align:center;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);margin-bottom:14px}
.marquee{overflow:hidden;mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.track{display:flex;gap:64px;width:max-content;animation:scroll 32s linear infinite}.track span{font:400 28px var(--serif);color:#8d847c;white-space:nowrap}
@keyframes scroll{to{transform:translateX(-50%)}}
.numbers{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:70px 5vw}
.num{background:#fff;border:1px solid #eee3d9;border-radius:24px;padding:30px}.num b{display:block;font:300 64px/1 var(--serif);color:var(--champ)}.num span{font-size:14px;color:var(--mute)}
.section{padding:100px 5vw}.alt{background:#F5EEE7}
.bento{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(200px,auto);gap:16px}
.card{border-radius:28px;padding:34px;background:#fff;border:1px solid #eee3d9;transition:transform .4s}.card:hover{transform:translateY(-6px)}
.card h3{font:400 30px var(--serif);margin-bottom:12px}.card p{color:var(--mute)}.big{grid-row:span 2}
.blush{background:linear-gradient(160deg,#f6e4de,var(--blush))}.champ{background:linear-gradient(160deg,#f3eadc,#e2cfad)}.dark{background:var(--char);color:var(--ivory)}.dark p{color:#cfc6bd}
.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.steps li{background:var(--ivory);border-radius:24px;padding:26px}.steps b{font:300 36px var(--serif);color:var(--champ)}.steps h4{margin:8px 0;font-weight:500}.steps p{font-size:14px;color:var(--mute)}
.packages{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.pkg{position:relative;border:1px solid #e6d9cd;border-radius:28px;padding:36px;background:#fff}
.pkg h3{font:400 36px var(--serif);margin-bottom:16px}.pkg ul{padding-left:18px;color:var(--mute);font-size:15px}.pkg li{margin:6px 0}.feat{background:var(--char);color:var(--ivory)}.feat ul{color:#d6ccc2}
.tag{display:inline-block;background:var(--blush);color:var(--char);border-radius:999px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:4px 12px;margin-bottom:12px}
.note{margin-top:24px;color:var(--mute);font-size:14px}
.carousel{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.slide{flex:0 0 min(420px,82%);scroll-snap-align:start;border-radius:28px;padding:40px;min-height:260px;background:repeating-linear-gradient(135deg,#fff,#fff 14px,#faf3ee 14px,#faf3ee 28px);border:1px dashed #d8c2b4}
.slide h3{font:400 32px var(--serif);margin-bottom:8px}.slide p{color:var(--mute)}.car-ctrl{display:flex;gap:8px;margin-top:20px}
.about{display:grid;grid-template-columns:1fr 1.4fr;gap:6vw;align-items:center}.about p{margin-bottom:16px;color:#4a443f;font-size:17px}
.about-art{position:relative;height:380px;border-radius:200px 200px 28px 28px;background:linear-gradient(170deg,#f3e3dc,var(--blush));overflow:hidden}
.s4{width:200px;height:200px;background:var(--champ);bottom:-40px;right:-40px;opacity:.5}.s5{width:120px;height:120px;background:#fff;top:60px;left:40px;opacity:.6;animation-delay:-5s}
.faq{max-width:820px}details{border-bottom:1px solid #e0d2c6;padding:20px 0}summary{cursor:pointer;font:400 24px var(--serif);list-style:none}summary::after{content:"+";float:right}details[open] summary::after{content:"–"}details p{margin-top:10px;color:var(--mute)}
.audit{display:grid;grid-template-columns:1fr 1.2fr;gap:5vw;background:var(--char);color:var(--ivory)}.audit .eyebrow,.audit p{color:#cfc6bd}
form{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#e4dbd2}.full{grid-column:1/-1}
input,select,textarea{font:inherit;padding:12px 14px;border-radius:14px;border:1px solid #4a443f;background:#2f2b28;color:var(--ivory)}
.check{flex-direction:row;align-items:flex-start;gap:10px}.hp{position:absolute;left:-9999px}.audit .pill-dark{background:var(--blush);color:var(--char);border-color:var(--blush)}.form-msg{color:var(--blush)!important}
footer{padding:30px 5vw;font-size:13px;color:var(--mute);text-align:center}
.reveal{opacity:0;transform:translateY(24px);transition:.8s cubic-bezier(.2,.7,.2,1)}.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
@media (max-width:900px){.nav nav{display:none}.hero,.about,.audit{grid-template-columns:1fr}.collage{height:340px}.numbers{grid-template-columns:1fr 1fr}.bento,.packages{grid-template-columns:1fr}.big{grid-row:auto}.steps{grid-template-columns:1fr}form{grid-template-columns:1fr}.section{padding:70px 6vw}.nav .pill{padding:10px 16px;font-size:13px}}
.num b.sm{font-size:40px;line-height:1.2}.price{font:300 44px var(--serif);margin:-6px 0 18px}.price small{font:400 13px var(--sans);opacity:.7}
.guarantee{margin-top:24px;padding:24px 28px;border-radius:24px;background:linear-gradient(120deg,#f6e4de,#efe3d0);border:1px solid #e6d9cd;max-width:900px}.guarantee p{color:var(--char)}
.promise{margin-top:16px;font-size:13px;letter-spacing:.02em;border-top:1px solid currentColor;padding-top:12px;opacity:.85}
/* a11y */
.skip{position:absolute;left:-9999px;top:0;z-index:100;background:var(--char);color:var(--ivory);padding:10px 16px;border-radius:0 0 12px 0}.skip:focus{left:0}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,.carousel:focus-visible{outline:3px solid var(--champ);outline-offset:3px}
.step-h{margin:8px 0;font:500 16px var(--sans)}.track span{color:#6f6862}
.audit a{color:var(--blush);text-decoration:underline}footer nav{margin-bottom:6px}footer a{text-decoration:underline}
.legal{max-width:780px;margin:0 auto;padding:70px 6vw}.legal h1{font-size:clamp(40px,6vw,64px);margin-bottom:10px}.legal h2{font-size:30px;margin:36px 0 10px}.legal p,.legal li{color:#4a443f;margin-bottom:10px}.legal ul{padding-left:20px}.legal .meta{color:var(--mute);font-size:14px}.legal a{text-decoration:underline}
.legal blockquote{background:#f6e4de;border-radius:18px;padding:18px 22px;margin:12px 0}
.num{min-width:0}@media (max-width:900px){.num{padding:22px}.num b{font-size:48px}.num b.sm{font-size:26px}}
.cur-usd{display:none}html[data-currency="USD"] .cur-usd{display:inline}html[data-currency="USD"] .cur-aud{display:none}
.cur-toggle{display:flex;align-items:center;gap:8px;margin-top:20px;font-size:14px;color:var(--mute)}.cur-toggle .pill{padding:8px 16px}.cur-toggle .pill[aria-pressed="true"]{background:var(--char);color:var(--ivory)}

/* DRAFT: append to site/styles.css when approved */
.about-photo{margin:0;border-radius:200px 200px 28px 28px;overflow:hidden;background:linear-gradient(170deg,#f3e3dc,var(--blush));aspect-ratio:3/4;max-width:440px;width:100%;justify-self:center}
.about-photo img{display:block;width:100%;height:100%;object-fit:cover}
.founder-strip{max-width:880px;margin:0 auto;padding:28px 6vw;text-align:center;font-size:16px;line-height:1.6;color:#4a443f;border-top:1px solid rgba(0,0,0,.08);border-bottom:1px solid rgba(0,0,0,.08)}
.founder-strip strong{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:400;font-size:21px;color:#1f1b18}
@media (max-width:900px){.about-photo{max-width:320px}.founder-strip{text-align:left}}
/* MULTIPAGE additions */
.crumb-wrap{padding:18px 5vw 0}.crumbs{font-size:13px;color:var(--mute)}.crumbs a{text-decoration:underline}.crumbs span[aria-hidden]{margin:0 6px}
.page-hero{padding:50px 5vw 40px;max-width:1000px}.page-hero h1{font-size:clamp(40px,6vw,76px)}.h1-sm{font-size:clamp(36px,4.5vw,58px);margin-bottom:24px}.h1-post{font-size:clamp(34px,4.6vw,56px)!important;max-width:900px}
.byline{color:var(--mute);font-size:14px;margin-top:18px}.byline a{text-decoration:underline}
.prose-wrap{padding-top:50px;padding-bottom:50px}.prose{max-width:760px;font-size:17px;color:#3d3834}
.prose h2{font-size:clamp(28px,3.4vw,42px);margin:44px 0 18px}.prose h2:first-child{margin-top:0}.prose h3{font:500 20px var(--sans);margin:30px 0 10px;color:var(--char)}
.prose p,.prose ul,.prose ol,.prose table,.prose pre{margin-bottom:18px}.prose ul,.prose ol{padding-left:22px}.prose li{margin-bottom:6px}
.prose a{text-decoration:underline;text-decoration-color:var(--champ);text-underline-offset:3px}.prose a:hover{color:var(--champ)}
.prose code{background:#f1e8df;padding:1px 6px;border-radius:6px;font-size:.9em}.prose pre{background:var(--char);color:var(--ivory);padding:20px;border-radius:16px;overflow-x:auto;font-size:13px;line-height:1.5}.prose pre code{background:none;padding:0}
.prose table,.cmp{border-collapse:collapse;width:100%;font-size:15px}.prose th,.prose td,.cmp th,.cmp td{border-bottom:1px solid #e3d6cb;padding:10px 12px;text-align:left;vertical-align:top}.prose thead th,.cmp thead th{background:#f1e8df;font-weight:600}
.tbl-wrap{overflow-x:auto}.cmp tbody th{font-weight:500}.cmp a{text-decoration:underline}
.prose blockquote{border-left:3px solid var(--champ);padding-left:16px;color:var(--mute)}
.cs-fig{margin:28px 0}.cs-fig img{max-width:100%;height:auto;border-radius:16px;border:1px solid #eadfd6}.cs-fig figcaption{font-size:13px;color:var(--mute);margin-top:6px}
.howlist{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.howlist li{background:#fff;border:1px solid #eee3d9;border-radius:24px;padding:26px}.howlist p{color:var(--mute);font-size:15px}
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.tier{background:var(--char);color:var(--ivory);border-radius:24px;padding:28px}.tier h3{font:400 30px var(--serif);margin-bottom:8px}.tier p{color:#e6dcd2}.tier.off{background:#fff;color:var(--mute);border:1px dashed #d9c9bb}.tier.off p{color:var(--mute)}
.rel-grid,.svc-grid,.post-grid,.cs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.rel{display:block;background:#fff;border:1px solid #eee3d9;border-radius:20px;padding:22px;font:400 22px/1.2 var(--serif);transition:transform .3s}.rel:hover,.post-card:hover,.cs-card:hover,.svc-card:hover{transform:translateY(-4px)}.rel small,.post-card small,.cs-card small{display:block;font:500 11px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin-bottom:8px}
.svc-card{display:flex;flex-direction:column}.svc-card p{flex:1}
.more,.svc-more{display:inline-block;margin-top:16px;font:500 14px var(--sans);text-decoration:underline;text-underline-offset:4px}.card.dark .svc-more,.card.dark .more{color:var(--blush)}.svc-more.dk{color:var(--char)}
.all-svc{display:flex;flex-direction:column;justify-content:center;background:var(--blush);border-color:var(--blush)}.all-svc p{color:var(--char)}
.post-card,.cs-card{display:block;background:#fff;border:1px solid #eee3d9;border-radius:24px;padding:28px;transition:transform .3s}.post-card h2,.cs-card h2{font:400 28px/1.15 var(--serif);margin-bottom:10px}.post-card p{color:var(--mute);font-size:15px}
.cs-card ul{padding-left:18px;line-height:1.7;margin:10px 0}.cs-card .fine{font-size:12px;color:var(--mute)}
.cta-band{text-align:center;background:var(--char);color:var(--ivory)}.cta-band h2{margin-bottom:16px}.cta-band p{color:#d9cfc5;margin:0 auto 26px;max-width:560px}.cta-band .pill-dark{background:var(--blush);color:var(--char);border-color:var(--blush)}
.pricing-page .section{padding-top:40px}
.site-foot{text-align:left;padding:60px 5vw 30px;background:#F5EEE7;border-top:1px solid #eadfd6}.foot-cols{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1fr;gap:30px;margin-bottom:30px}.foot-cols h2{font:600 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;margin-bottom:12px}.foot-cols ul{list-style:none;padding:0}.foot-cols li{margin-bottom:6px}.foot-cols a{text-decoration:none}.foot-cols a:hover{text-decoration:underline}.foot-cols .logo{margin-bottom:10px}.foot-base{text-align:center;border-top:1px solid #e3d6cb;padding-top:18px}
@media (max-width:900px){.howlist,.tiers,.rel-grid,.svc-grid,.post-grid,.cs-grid{grid-template-columns:1fr}.foot-cols{grid-template-columns:1fr 1fr}.page-hero{padding:34px 6vw 20px}.prose{font-size:16px}}
@media (max-width:900px){.nav{flex-wrap:wrap;row-gap:8px}.nav nav{display:flex;order:3;width:100%;overflow-x:auto;gap:20px;font-size:13px;padding-bottom:2px;white-space:nowrap}}
/* hero tile rotation (clockwise: TL -> TR -> BR -> BL) */

.collage .tile{transition:left 3s cubic-bezier(.65,0,.35,1),top 3s cubic-bezier(.65,0,.35,1),width 3s cubic-bezier(.65,0,.35,1),height 3s cubic-bezier(.65,0,.35,1);right:auto;bottom:auto}
.collage .tile.p0{left:0;top:6%;width:56%;height:62%}
.collage .tile.p1{left:60%;top:0;width:40%;height:44%}
.collage .tile.p2{left:56%;top:60%;width:40%;height:40%}
.collage .tile.p3{left:10%;top:70%;width:46%;height:30%}
@media (prefers-reduced-motion:reduce){.collage .tile{transition:none}}
.marquee{-webkit-mask:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent);mask:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent)}
.track{gap:0;animation-duration:80s}.track span{margin-right:64px}
@media (max-width:900px){.track span{font-size:22px;margin-right:40px}.track{animation-duration:60s}}
.example-flag{display:inline-block;background:#fbe3a6;color:#5a4300;font:600 12px var(--sans);letter-spacing:.08em;padding:6px 12px;border-radius:999px;margin:6px 0 18px}
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.quote{background:#fff;border:1px solid #eee3d9;border-radius:24px;padding:28px}.quote blockquote{font:400 22px/1.3 var(--serif);margin-bottom:12px}.quote figcaption{font-size:13px;color:var(--mute)}
[hidden]{display:none!important}
.ai-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:820px;background:#fff;border:1px solid #eee3d9;border-radius:24px;padding:28px}.ai-form label{display:flex;flex-direction:column;font-size:13px;color:var(--mute);gap:6px}.ai-form input{font:400 16px var(--sans);padding:12px 14px;border:1px solid #e0d2c6;border-radius:12px;background:var(--ivory)}.ai-form button,.ai-form .fine{grid-column:1/-1}.fine{font-size:12px;color:var(--mute)}
.ai-res{max-width:900px;margin-top:30px;background:#fff;border:1px solid #eee3d9;border-radius:24px;padding:28px}.ai-res h2{font-size:clamp(26px,3vw,38px);margin-bottom:18px}.ai-res h3{font:500 18px var(--sans);margin:22px 0 8px}.ai-res ol{padding-left:20px;margin-bottom:18px}.ai-err{margin-top:20px;color:#8a2b1f}
.hp{position:absolute;left:-9999px}
@media (max-width:900px){.ai-form{grid-template-columns:1fr}}
@media (max-width:900px){.ai-res{padding:18px}.ai-res .cmp{font-size:13px}.ai-res .cmp td,.ai-res .cmp th{padding:8px 6px}}
