:root{--ink:#172a34;--ink2:#10212a;--blue:#28495a;--gold:#b69062;--paper:#fbfaf7;--sand:#f0eee8;--line:#d7dddc;--muted:#51616a;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.64 var(--sans);-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit}button,input,textarea{font:inherit}button{cursor:pointer}p{margin:0 0 1em}.wrap{width:min(1180px,calc(100% - 48px));margin:auto}.skip{position:absolute;top:-90px;left:16px;background:white;padding:10px;z-index:30}.skip:focus{top:10px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.19em;text-transform:uppercase;color:#92734d;margin:0 0 17px}.section-heading{font:normal clamp(34px,4.4vw,52px)/1.13 var(--serif);letter-spacing:-.04em;margin:0 0 19px}.section-lead{font-size:18px;color:var(--muted);max-width:650px}.header{background:var(--paper);position:relative;z-index:10;border-bottom:1px solid var(--line)}.header-inner{min-height:82px;display:flex;justify-content:space-between;align-items:center;gap:25px}.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font:normal 23px/1.1 var(--serif);white-space:nowrap}.brand-icon{display:grid;place-items:center;width:37px;height:37px;background:var(--ink);color:#f5f2eb;font:italic 25px var(--serif);flex:none}.nav{display:flex;align-items:center;gap:26px}.nav a{font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap}.nav a:hover,.footer-links a:hover{text-decoration:underline;text-underline-offset:4px}.nav .cta{border-bottom:2px solid var(--gold);padding-bottom:5px}.menu{display:none;border:1px solid var(--ink);background:transparent;padding:8px 12px;color:var(--ink)}.hero{background:var(--ink);color:#fff;padding:70px 0}.hero-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:62px;align-items:center}.hero .eyebrow{color:#d6b88d}.hero h1{font:normal clamp(44px,5.1vw,68px)/1.05 var(--serif);letter-spacing:-.05em;margin:0 0 26px}.hero .lead{font-size:19px;color:#dce5e5;max-width:510px;margin:0 0 30px}.hero .aside{font-size:13px;color:#b7c9ca;letter-spacing:.04em;margin:27px 0 0}.hero-image{border:8px solid #f7f5ee;position:relative}.hero-image img{width:100%;height:420px;object-fit:cover}.hero-image:after{content:"";position:absolute;right:-18px;bottom:-18px;width:36%;height:36%;border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);pointer-events:none}.buttons{display:flex;gap:11px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:10px 19px;background:var(--ink);border:1px solid var(--ink);color:white;text-decoration:none;font-size:14px;font-weight:700}.button:hover{background:var(--ink2)}.hero .button{background:#e4d4bc;color:var(--ink);border-color:#e4d4bc}.hero .button:hover{background:white}.hero .button.outline{background:transparent;border-color:#90a5aa;color:white}.hero .button.outline:hover{background:#2e4953}.section{padding:93px 0}.intro-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:9%}.intro-copy{font-size:18px;color:#4c5c64}.intro-copy p:last-child{margin:0}.facts{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:27px}.facts div{border-top:1px solid var(--line);padding-top:12px;font-size:14px}.facts strong{display:block;color:var(--ink)}.facts span{color:var(--muted)}.sand{background:var(--sand)}.service-list{border-top:1px solid #cdd6d4;margin-top:40px}.service{display:grid;grid-template-columns:75px minmax(0,.75fr) minmax(0,1.25fr);gap:20px;padding:27px 0;border-bottom:1px solid #cdd6d4;align-items:start}.service .no{font:italic 25px var(--serif);color:var(--gold)}.service h3{font:normal 26px/1.2 var(--serif);margin:0}.service p{color:var(--muted);font-size:16px;margin:0}.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:42px}.phase{padding:24px 22px;border:1px solid var(--line);background:#fff;min-height:248px}.phase .no{font:normal 29px var(--serif);color:var(--gold);display:block;margin-bottom:29px}.phase h3{font-size:17px;line-height:1.35;margin:0 0 9px}.phase p{font-size:15px;color:var(--muted);margin:0}.pricing-header{display:flex;justify-content:space-between;gap:30px;align-items:end}.pricing-header .note{font-size:14px;color:var(--muted);max-width:360px}.packages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:34px}.package{background:var(--paper);border:1px solid #ccd4d1;padding:31px 27px 28px;display:flex;flex-direction:column;min-height:458px}.package.featured{background:var(--blue);color:white;border-color:var(--blue)}.package .tag{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:700;color:#866c4d}.package.featured .tag{color:#d6b88d}.package h3{font:normal 28px var(--serif);margin:15px 0 6px}.package .price{font:normal 34px var(--serif);margin:9px 0 11px}.package .desc{font-size:15px;color:var(--muted);min-height:49px}.package.featured .desc,.package.featured li{color:#e1eaea}.package ul{padding:0;list-style:none;border-top:1px solid var(--line);margin:22px 0 28px}.package li{padding:9px 0;font-size:14px;border-bottom:1px solid var(--line)}.package.featured ul,.package.featured li{border-color:#69808a}.package .button{margin-top:auto}.package:not(.featured) .button{background:transparent;color:var(--ink)}.package:not(.featured) .button:hover{background:var(--sand)}.package.featured .button{background:#f5efe3;color:var(--ink);border-color:#f5efe3}.package.featured .button:hover{background:white}.pricing-foot{font-size:14px;color:var(--muted);margin:21px 0 0}.faq-grid{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:8%}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:21px 0;line-height:1.4;font-weight:700}summary::-webkit-details-marker{display:none}summary:after{content:'+';font:28px/1 var(--serif);color:var(--blue)}details[open] summary:after{content:'−'}details p{font-size:15px;color:var(--muted);padding:0 35px 20px 0;margin:0}.contact{background:var(--blue);color:white}.contact .eyebrow{color:#d8bd91}.contact .section-lead{color:#d7e4e5}.contact-grid{display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);gap:8%}.contact dl{margin:36px 0 0}.contact dl div{margin-bottom:23px}.contact dt{font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:#c8d9d9;margin-bottom:5px}.contact dd{margin:0}.contact dd a{text-decoration:none}.contact dd a:hover{text-decoration:underline}.form{background:var(--paper);color:var(--ink);padding:37px}.form h3{font:normal 30px var(--serif);margin:0 0 8px}.form>p{color:var(--muted);font-size:14px;margin-bottom:22px}.field{margin-bottom:17px}.field label{display:block;font-size:13px;font-weight:700;margin-bottom:7px}.field input,.field textarea{display:block;width:100%;border:1px solid #bdc9c8;background:white;color:var(--ink);padding:12px;border-radius:0;outline-offset:2px}.field textarea{min-height:123px;resize:vertical}.consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:#54646a;line-height:1.5;margin:6px 0 20px}.consent input{margin:4px 0 0;flex:none;accent-color:var(--ink)}.consent a{color:var(--blue)}.form .notice{font-size:12px;color:#687479;margin:15px 0 0}.footer{background:var(--ink2);color:#f1f5f3;padding:52px 0 23px}.footer-top{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding-bottom:39px;border-bottom:1px solid #40545d}.footer .brand-icon{background:#dfc9a8;color:var(--ink)}.footer-copy{font-size:14px;color:#b9cbd0;max-width:390px;margin-top:19px}.footer-links{display:grid;grid-template-columns:repeat(2,max-content);gap:11px 32px;justify-content:end;align-content:start}.footer-links a{text-decoration:none;font-size:14px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;color:#a9bdc0;font-size:12px;padding-top:20px}.page-head{background:var(--sand);padding:75px 0}.page-head h1{font:normal clamp(40px,5vw,61px)/1.1 var(--serif);letter-spacing:-.04em;margin:0 0 17px}.page-head p:last-child{font-size:18px;color:var(--muted);max-width:760px;margin:0}.article{padding:72px 0 94px}.prose{max-width:800px}.prose h2{font:normal 29px/1.24 var(--serif);margin:42px 0 14px}.prose h2:first-child{margin-top:0}.prose p,.prose li{color:#4e5e66}.prose a{color:var(--blue)}.prose .callout{background:var(--sand);border-left:3px solid var(--gold);padding:20px 24px;margin:27px 0}.prose .callout p{margin:0}.dated{font-size:13px;color:#6b777b;margin-top:28px}.notfound{text-align:center;padding:130px 0}.notfound h1{font:normal 78px var(--serif);margin:0}.notfound p{color:var(--muted)}
@media(max-width:1050px){.menu{display:block}.nav{display:none;position:absolute;top:82px;left:0;right:0;background:var(--paper);padding:12px 24px 22px;box-shadow:0 12px 20px #1b2e3520;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:11px 4px}.nav .cta{text-align:center;background:var(--ink);color:white;padding:11px;margin-top:8px;border:0}.nav .cta:hover{text-decoration:none}.hero-grid{gap:36px}.process-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.wrap{width:min(100% - 36px,560px)}.header-inner{min-height:70px}.nav{top:70px}.brand{font-size:20px}.brand-icon{width:34px;height:34px}.hero{padding:52px 0 63px}.hero-grid,.intro-grid,.faq-grid,.contact-grid{grid-template-columns:1fr;gap:34px}.hero h1{font-size:clamp(42px,9.5vw,56px)}.hero .lead{font-size:17px}.hero-image img{height:290px}.hero-image:after{right:-8px;bottom:-8px}.section{padding:68px 0}.section-lead,.intro-copy{font-size:17px}.service{grid-template-columns:46px 1fr;gap:10px}.service p{grid-column:2}.packages{grid-template-columns:1fr;margin-top:28px}.package{min-height:0}.pricing-header{display:block}.pricing-header .note{max-width:none}.phase{min-height:0}.form{padding:27px 23px}.footer-top{grid-template-columns:1fr;gap:25px}.footer-links{justify-content:start}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:7px}.page-head{padding:57px 0}.article{padding:53px 0 73px}}
@media(max-width:440px){.wrap{width:calc(100% - 32px)}.header-inner{gap:10px}.brand{font-size:18px}.buttons .button{width:100%}.facts,.process-grid{grid-template-columns:1fr}.footer-links{grid-template-columns:1fr}.section-heading{font-size:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
