:root{--bone:#f2eee7;--stone:#ddd5cb;--mist:#eee9e1;--ink:#151313;--charcoal:#24201f;--plum:#5a3548;--plum-dark:#33212d;--taupe:#8a7b70;--line:#15131326;--white:#fbf8f2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bone);color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}p{margin:0 0 1.15rem}.serif,h1,h2,h3{letter-spacing:-.035em;font-family:Fraunces,Georgia,serif;font-weight:500}h1{max-width:1050px;margin:0 0 1.4rem;font-size:clamp(3rem,6.2vw,5.9rem);line-height:.96}h2{margin:0 0 1.2rem;font-size:clamp(2rem,4.2vw,4.2rem);line-height:1}h3{margin:0 0 .85rem;font-size:1.6rem;line-height:1.1}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--plum);margin-bottom:1rem;font-size:.76rem;font-weight:700}.wrap{width:min(1180px,100% - 40px);margin:0 auto}.narrow{width:min(820px,100% - 40px);margin:0 auto}.site-header{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);background:#f2eee7d1;position:sticky;top:0}.nav{justify-content:space-between;align-items:center;gap:2rem;height:76px;display:flex}.brand{flex-direction:column;line-height:1.1;display:flex}.brand strong{letter-spacing:-.04em;font-family:Fraunces,Georgia,serif;font-size:1.35rem}.brand span{color:var(--taupe);margin-top:.25rem;font-size:.76rem}.links{color:#332f2c;align-items:center;gap:1.4rem;font-size:.9rem;display:flex}.links a{opacity:.82}.links a:hover{opacity:1}.btn,.linkbtn{border:1px solid var(--ink);border-radius:0;justify-content:center;align-items:center;padding:.85rem 1.1rem;font-size:.9rem;line-height:1;transition:all .2s;display:inline-flex}.btn{background:var(--ink);color:var(--white)}.btn:hover{background:var(--plum-dark);border-color:var(--plum-dark);transform:translateY(-1px)}.linkbtn{color:var(--ink);background:0 0}.linkbtn:hover{background:#1513130d}.hero{align-items:center;min-height:680px;display:flex;position:relative;overflow:hidden}.hero:after{content:"";pointer-events:none;background:radial-gradient(circle at 84% 20%,#5a354833,#0000 28%),linear-gradient(105deg,#0000 0 58%,#15131314 58% 60%,#0000 60%),linear-gradient(145deg,#0000 0 70%,#1513130f 70% 71%,#0000 71%);position:absolute;inset:0}.hero .copy{z-index:2;max-width:840px;position:relative}.hero p{color:#3d3733;max-width:700px;font-size:1.18rem}.actions{flex-wrap:wrap;gap:.9rem;margin-top:2rem;display:flex}.section{padding:110px 0}.section.tight{padding:80px 0}.grid-2{grid-template-columns:1fr 1fr;align-items:start;gap:5rem;display:grid}.surface-list{gap:.8rem;display:grid}.surface-list div{border-top:1px solid var(--line);padding:1rem 0;font-size:1.03rem}.dark{background:var(--charcoal);color:var(--white)}.dark .eyebrow{color:#cfb8c6}.dark p,.dark li{color:#e4ddd4}.dark .btn{background:var(--white);color:var(--ink);border-color:var(--white)}.dark .linkbtn{color:var(--white);border-color:#fbf8f28c}.cards{grid-template-columns:repeat(2,1fr);gap:1.2rem;display:grid}.card{background:#fbf8f209;border:1px solid #fbf8f238;flex-direction:column;justify-content:space-between;min-height:320px;padding:2.1rem;display:flex}.card.light{border-color:var(--line);background:#ffffff38}.price{color:#cdbfc2;text-transform:uppercase;letter-spacing:.09em;margin:.7rem 0 1.2rem;font-size:.88rem;font-weight:700}.light .price,.card.light .price{color:var(--plum)}.portrait{object-fit:cover;object-position:center 30%;filter:saturate(.92)contrast(.97);width:100%;height:560px}.image-frame{position:relative}.image-frame:before{content:"";border:1px solid var(--line);z-index:-1;position:absolute;inset:16px -16px -16px 16px}.stone{background:var(--mist)}.credential-line{flex-wrap:wrap;gap:.8rem;margin-top:1.5rem;display:flex}.pill{border:1px solid var(--line);color:#4d4641;background:#fff3;padding:.55rem .8rem;font-size:.82rem}.footer{color:var(--white);background:#120f10;padding:60px 0}.footer-grid{grid-template-columns:1.3fr 1fr 1fr;gap:2rem;display:grid}.footer .brand span,.footer a{color:#d7cec4}.footer a{margin:.35rem 0;display:block}.page-hero{border-bottom:1px solid var(--line);padding:120px 0 80px;position:relative;overflow:hidden}.page-hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#5a354821,#0000 60%);width:55vw;height:55vw;position:absolute;top:-30%;right:-10%}.page-hero p{color:#403a36;max-width:780px;font-size:1.13rem}.page-price{color:var(--plum);text-transform:uppercase;letter-spacing:.09em;margin:1.4rem 0;font-size:.85rem;font-weight:800}.bullets{margin:1rem 0 0;padding:0;list-style:none}.bullets li{border-top:1px solid var(--line);padding:1rem 0}.process{counter-reset:step;gap:1rem;display:grid}.step{border-top:1px solid var(--line);grid-template-columns:80px 1fr;gap:1.2rem;padding:1.4rem 0;display:grid}.step:before{counter-increment:step;content:"0"counter(step);color:var(--plum);font-family:Fraunces,Georgia,serif;font-size:2rem}.panel{border:1px solid var(--line);background:#ffffff40;padding:2.2rem}.split-panel{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.split-panel>div{border:1px solid var(--line);background:#ffffff30;padding:2rem}.quote-lines{gap:1rem;display:grid}.quote-lines p{letter-spacing:-.03em;border-top:1px solid #fbf8f240;padding-top:1.1rem;font-family:Fraunces,Georgia,serif;font-size:clamp(1.35rem,2.6vw,2.4rem);line-height:1.1}.form{gap:1.1rem;display:grid}.field label{margin-bottom:.35rem;font-size:.85rem;font-weight:700;display:block}.field input,.field textarea,.field select{border:1px solid var(--line);width:100%;font:inherit;color:var(--ink);background:#ffffff59;padding:.95rem 1rem}.field textarea{resize:vertical;min-height:140px}.submit{margin-top:.5rem}.mobile-toggle{border:1px solid var(--line);background:#ffffff38;justify-content:center;align-items:center;width:44px;height:44px;display:none;position:relative}.mobile-toggle span{background:var(--ink);width:20px;height:1.5px;transition:all .2s;position:absolute}.mobile-toggle span:first-child{transform:translateY(-4px)}.mobile-toggle span:last-child{transform:translateY(4px)}body.menu-open .mobile-toggle span:first-child{transform:rotate(42deg)}body.menu-open .mobile-toggle span:last-child{transform:rotate(-42deg)}.mobile-menu{border-top:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f2eee7f7;display:none}.mobile-menu-inner{gap:.15rem;padding:1.2rem 0 1.4rem;display:grid}.mobile-menu a{border-bottom:1px solid var(--line);padding:.9rem 0;font-size:1.05rem;display:block}.mobile-menu .btn{border-bottom:1px solid var(--ink);width:100%;margin-top:1rem}.form-status{border:1px solid var(--line);background:#ffffff52;margin-top:1rem;padding:1rem;display:none}.form-status.is-visible{display:block}.form-status.success{border-color:#305f4573}.form-status.error{border-color:#5a35488c}button[disabled]{opacity:.6;cursor:not-allowed}@media (width<=850px){.links{display:none}.mobile-toggle{display:flex}body.menu-open .mobile-menu{display:block}.nav{height:68px}.brand strong{font-size:1.12rem}.brand span{display:none}.hero{min-height:auto;padding:105px 0}.grid-2,.cards,.footer-grid,.split-panel{grid-template-columns:1fr;gap:2rem}.section{padding:76px 0}.portrait{height:420px}.step{grid-template-columns:1fr;gap:.3rem}.step:before{font-size:1.4rem}.page-hero{padding:85px 0 56px}h1{font-size:clamp(2.65rem,13vw,4.45rem);line-height:.98}h2{font-size:clamp(2rem,10vw,3.4rem)}.actions .btn,.actions .linkbtn{width:100%}}@media print{.site-header,.footer,.mobile-menu,.mobile-toggle{display:none!important}.page-hero,.section{padding:42px 0!important}h1{font-size:48px!important;line-height:1.02!important}}.site-header{box-shadow:0 1px #15131308}.hero{min-height:735px}.hero .copy{padding-top:2rem}.hero p{max-width:760px}.section .eyebrow+h2{margin-bottom:1.35rem}.cards{gap:1.5rem}.card{min-height:350px;padding:2.35rem;position:relative;overflow:hidden}.card:after{content:"";pointer-events:none;background:radial-gradient(circle,#fbf8f221,#0000 62%);border-radius:50%;width:18rem;height:18rem;position:absolute;top:-28%;right:-18%}.card h3{font-size:clamp(1.7rem,3vw,2.25rem)}.card p{z-index:1;position:relative}.card .linkbtn{z-index:1;align-self:flex-start;position:relative}.price,.page-price{font-weight:800}.grid-2 .image-frame{align-self:start}.image-frame:after{content:"";filter:blur(40px);z-index:-2;background:#5a35481f;width:58%;height:28%;position:absolute;bottom:-8%;left:8%}.panel{box-shadow:0 18px 50px #1513130b}.panel.pricing-panel{background:linear-gradient(145deg,#fbf8f28c,#ddd5cb57);border-color:#15131338;position:relative;overflow:hidden}.panel.pricing-panel:before{content:"";border-top:4px solid var(--plum);opacity:.9;position:absolute;inset:0}.panel.pricing-panel .page-price{margin-top:.2rem}.split-panel>div{box-shadow:0 14px 42px #15131309}.form{margin-top:2rem}.field label{letter-spacing:.01em}.field input,.field textarea,.field select{background:#ffffff73;border-color:#15131338}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--plum);background:#ffffffad;outline:2px solid #5a354842}.field small{color:var(--taupe);margin-top:.35rem;font-size:.8rem;display:block}.submit{width:auto;min-width:170px}.mobile-menu{box-shadow:0 20px 50px #15131314}.mobile-menu .btn{display:inline-flex}.footer{margin-top:0}.dark .card{border-color:#fbf8f247}.surface-list div{transition:background .18s,padding-left .18s}.surface-list div:hover{background:#ffffff29;padding-left:.6rem}@media (width>=851px){.site-header .links .btn{padding:.78rem 1rem}}@media (width<=850px){.hero{padding:118px 0 96px}.page-hero p{font-size:1.05rem}.card{min-height:auto}.submit{width:100%}.panel{padding:1.6rem}}.panel a{border-bottom:1px solid}.footer a:hover{color:var(--white)}.footer p{font-size:.92rem}.narrow.panel h2:not(:first-child){margin-top:2.1rem}.narrow.panel h2{font-size:clamp(1.8rem,3vw,2.7rem)}.page-hero p+p{margin-top:.15rem}@media (width<=850px){.credential-line{gap:.5rem}.pill{font-size:.78rem}.quote-lines p{font-size:1.35rem}}.process{gap:0}.step{grid-template-columns:minmax(68px,92px) minmax(0,760px);align-items:start;gap:1.5rem;display:grid}.step>div:empty{display:none}.step>div:not(:empty){grid-area:1/2;min-width:0;max-width:760px}.step h3{max-width:620px}.step p{max-width:760px}@media (width<=850px){.step{grid-template-columns:1fr;gap:.6rem}.step:before,.step>div:not(:empty){grid-area:auto/1}.step h3,.step p{max-width:none}}
