:root{--navy:#132336;--ink:#172c41;--gold:#d8b67a;--paper:#f8f9f9;--muted:#596776;--line:#dfe3e6;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b6843a;outline-offset:5px}::selection{background:var(--gold);color:var(--navy)}.skip{position:absolute;top:-100px;background:white;padding:12px;z-index:100}.skip:focus{top:0}.concept{background:var(--navy);color:#cdd4dc;text-align:center;font-size:12px;letter-spacing:.035em;padding:7px 18px}.concept span{margin-left:14px;color:var(--gold)}header{height:108px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;background:#fff;position:relative;z-index:10}.brand{display:flex;align-items:center;gap:13px;font-family:var(--serif);font-size:25px;letter-spacing:-.7px;line-height:1.15}.brand small{font-family:var(--sans);display:block;font-size:10px;letter-spacing:3.4px;margin-top:9px;font-weight:500}.monogram{font-size:23px;border:1px solid #b49461;border-radius:50%;height:52px;width:52px;display:grid;place-items:center;position:relative}.monogram span{position:absolute;top:-10px;right:0;font-size:21px;background:#fff;color:#a38049;line-height:1}nav{display:flex;gap:32px;font-size:14px}nav a{position:relative}nav a:after{content:'';height:1px;background:var(--ink);position:absolute;bottom:-5px;left:0;width:0;transition:width .25s}nav a:hover:after{width:100%}.nav-cta{border:1px solid var(--line);border-radius:50px;padding:13px 23px;font-size:14px}.nav-cta span{margin-left:20px}.menu{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:735px}.hero-copy{padding:67px 7% 35px 11%;background:#f8f9f9}.eyebrow{font-size:12px;font-weight:600;letter-spacing:2.4px;line-height:1.6}.hero .eyebrow{display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:2px}.eyebrow>span{width:26px;height:1px;background:#a88c58}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-2.4px;line-height:1.1}h1{font-size:clamp(50px,4.85vw,78px);margin:27px 0 26px}h1 em,h2 em{font-weight:400;color:#927445}h1 em{color:#526d7f}p{color:var(--muted)}.hero-copy>p{max-width:385px;font-size:16px}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:25px;margin-top:31px}.button{border:0;display:inline-flex;align-items:center;justify-content:space-between;gap:25px;background:var(--navy);color:white;border-radius:4px;padding:17px 23px;font-size:14px;transition:background .2s,transform .2s}.button:hover{background:#2d4960;transform:translateY(-2px)}.button span{font-size:20px;line-height:1}.text-link{font-size:14px;border-bottom:1px solid #b7c0c8;padding-bottom:6px;display:inline-flex;gap:22px}.hero-note{border-top:1px solid var(--line);margin-top:37px;padding-top:20px;font-size:13px;color:#596776;display:flex;gap:12px;align-items:center}.mini-spark{font-size:25px;color:#a0804f}.hero-photo{position:relative;overflow:hidden;min-height:650px;background:#dce0de}.hero-photo>img{height:100%;width:100%;object-fit:cover;position:absolute;animation:photoIn 1.6s ease-out}.photo-shade{position:absolute;inset:0;background:linear-gradient(180deg,#12233325 0%,transparent 40%,#0e213ab0 100%)}.image-top{position:absolute;top:36px;left:38px;color:white;font-size:11px;letter-spacing:2.7px}.image-bottom{position:absolute;bottom:50px;left:40px;right:40px;display:flex;align-items:flex-end;justify-content:space-between;color:white}.image-bottom>span{font:400 41px/1.15 var(--serif);letter-spacing:-1px}.image-bottom a{border:1px solid #ffffff7a;border-radius:50%;width:49px;height:49px;display:grid;place-items:center;font-size:23px}.vertical{position:absolute;right:22px;top:31%;writing-mode:vertical-rl;letter-spacing:3px;font-size:10px;color:white}.trust-strip{background:var(--navy);color:#e7eaf0;display:flex;justify-content:center;gap:4.7%;padding:24px 5%;font-size:13px;letter-spacing:.4px}.trust-strip b{color:var(--gold);font-size:21px;line-height:1.2;font-weight:400}.section{padding:105px 7%}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:51px}.section-head>p{max-width:340px;padding-bottom:6px}.section-head .eyebrow{margin-bottom:20px;color:#6d7781}h2{font-size:clamp(40px,4.3vw,62px)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.service-card{padding:29px 26px 23px;display:flex;flex-direction:column;border-right:1px solid var(--line);transition:background .3s,transform .3s}.service-card:last-child{border:0}.service-card:hover{background:#fff;transform:translateY(-5px)}.card-top{display:flex;justify-content:space-between;color:#8e7653;font-size:12px;align-items:center;margin-bottom:35px}.card-top>span{font-size:28px;color:#6f8190;line-height:1}h3{font-family:var(--serif);font-weight:400;font-size:30px;line-height:1.18;letter-spacing:-.5px}.service-card p{font-size:15px;margin:21px 0 28px}.tags{font-size:10px;letter-spacing:1px;color:#657482;margin-top:auto;margin-bottom:28px}.service-card a{font-size:13px;border-top:1px solid var(--line);padding-top:19px;display:flex;justify-content:space-between;gap:8px}.service-card a span{font-size:18px}.about{display:grid;grid-template-columns:1fr 1fr;background:#fff}.about-image{position:relative;min-height:670px;overflow:hidden}.about-image img{position:absolute;height:100%;width:100%;object-fit:cover}.image-caption{position:absolute;bottom:25px;left:28px;background:#fffef8ed;padding:14px 19px;font-size:10px;letter-spacing:2px}.about-copy{padding:80px 14% 75px 12%}.about-copy .eyebrow{font-size:11px;color:#657482;margin-bottom:22px}.about-copy .lead{font-size:20px;color:var(--ink);line-height:1.5;margin:28px 0 20px}.about-copy>p:not(.lead){margin-bottom:19px;font-size:15px}.signature{font:italic 20px var(--serif);color:#927445;border-top:1px solid var(--line);padding:25px 0}.process{background:var(--navy);color:white;position:relative}.process h2 em{color:var(--gold)}.process .eyebrow{color:#abb7c4}.button-light{background:#e6d1ab;color:var(--navy)}.button-light:hover{background:#f4e5c8}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:65px}.steps article{border-top:1px solid #ffffff35;padding-top:30px}.steps article>span{font:italic 43px var(--serif);color:var(--gold)}.steps h3{font-size:25px;margin:25px 0 15px}.steps p{color:#bac5d0;font-size:15px;max-width:290px}.questions{display:grid;grid-template-columns:1fr 1.15fr;gap:90px}.questions .eyebrow{margin-bottom:22px;color:#657482}.questions>div>p{margin-top:30px;font-size:15px}.questions>div>p a{border-bottom:1px solid #9caaaf;color:var(--ink)}details{border-bottom:1px solid var(--line)}details:first-child{border-top:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:25px;padding:25px 0;font-size:16px}summary::-webkit-details-marker{display:none}summary span{color:#9c7d47;font-size:22px;line-height:1}details[open] summary span{transform:rotate(45deg)}details p{font-size:15px;padding:0 30px 25px 0}.contact{background:#e9eef1;display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact .eyebrow{color:#566d7d;margin-bottom:28px}.contact h2{font-size:clamp(50px,5.2vw,75px)}.contact h2 em{color:#637e91}.contact-intro>p{margin:28px 0 35px}.contact-phone{font:30px var(--serif);display:flex;gap:30px;align-items:center}.contact-email{display:inline-block;margin-top:14px;font-size:14px;border-bottom:1px solid #a0adb6}.inquiry{background:white;padding:38px;border-radius:5px;box-shadow:0 20px 60px #10243b06}.inquiry>h3{font-size:29px}.inquiry>p{font-size:14px;margin:12px 0 26px}label{font-size:13px;color:#405366;display:block;margin-bottom:20px}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #cdd5db;background:#fbfcfc;padding:12px 10px;margin-top:7px;border-radius:0;color:var(--ink);font-size:14px}input:focus,select:focus,textarea:focus{outline:2px solid #7b97ac;outline-offset:2px}textarea{resize:vertical;min-height:90px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.inquiry .button{width:100%}.form-note{font-size:12px;margin-top:15px;line-height:1.6}#form-status{font-size:13px;margin-top:12px;color:#385c63}footer{padding:52px 7% 25px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;background:#fff;gap:25px}footer>p{font-family:var(--serif);font-style:italic;font-size:20px}footer>a:last-of-type{font-size:13px}.footer-bottom{border-top:1px solid var(--line);padding-top:24px;margin-top:20px;width:100%;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:11px;color:#6c7783}.footer-bottom a{border-bottom:1px solid #a0aab3}.reveal{opacity:1}.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s,transform .8s}.js .reveal.visible{opacity:1;transform:none}@keyframes photoIn{from{transform:scale(1.06)}to{transform:scale(1)}}@media(min-width:1550px){.hero-copy{padding-top:90px;padding-bottom:65px}.hero{min-height:850px}}@media(max-width:1100px){header{padding:0 4%;height:90px}nav{gap:19px}.nav-cta{padding:12px 17px}.hero{min-height:710px}.hero-copy{padding:55px 7% 25px 8%}h1{font-size:58px}.hero-actions{gap:18px}.hero-note{margin-top:26px}.service-card{padding:24px 18px}.service-card h3{font-size:27px}.section{padding:80px 5%}.about-copy{padding:65px 9%}.questions,.contact{gap:50px}.trust-strip{gap:3%;font-size:12px}.inquiry{padding:28px}.contact-email{font-size:13px}}
@media(max-width:800px){header{height:83px;padding:0 6%}.brand{font-size:22px}.brand small{font-size:9px}.monogram{width:43px;height:43px;font-size:20px}.nav-cta{display:none}.menu{display:flex;gap:15px;align-items:center;border:0;background:none;color:var(--ink);font-size:14px;padding:12px 0 12px 12px}.menu span{font-size:24px}nav{display:none;position:absolute;top:83px;left:0;right:0;background:white;padding:25px 6%;border-top:1px solid var(--line);box-shadow:0 10px 20px #00000008}nav.open{display:flex;flex-direction:column;gap:22px}.hero{grid-template-columns:1fr 1fr;min-height:650px}.hero-copy{padding:40px 8%}.hero .eyebrow{font-size:9px;letter-spacing:1px;gap:6px}h1{font-size:46px;letter-spacing:-1.8px}.hero-copy>p{font-size:15px}.hero-photo{min-height:630px}.image-bottom{left:25px;right:25px;bottom:35px}.image-bottom>span{font-size:32px}.image-top{left:25px;font-size:9px}.vertical{display:none}.trust-strip{display:grid;grid-template-columns:1fr 1fr;text-align:center;gap:12px;font-size:12px}.trust-strip b{display:none}.section-head{gap:25px}.section-head>p{max-width:260px;font-size:15px}.service-grid{grid-template-columns:1fr 1fr}.service-card{padding:28px}.service-card:nth-child(2){border-right:0}.service-card:nth-child(-n+2){border-bottom:1px solid var(--line)}.about-copy{padding:45px 9%}.about-image{min-height:650px}.about-copy h2{font-size:42px}.about-copy .eyebrow{font-size:10px}.about-copy .lead{font-size:18px}.steps{gap:25px}.steps h3{font-size:22px}.questions{gap:35px}.questions h2{font-size:42px}.contact{grid-template-columns:1fr;gap:40px}.contact h2{font-size:60px}.contact-intro{max-width:550px}.inquiry{padding:35px}.footer-bottom{font-size:12px}footer>p{display:none}}
@media(max-width:560px){.concept{font-size:10px}.concept span{margin-left:5px}header{height:80px}nav{top:80px}.hero{display:flex;flex-direction:column}.hero-copy{padding:43px 7% 28px}h1{font-size:clamp(49px,13vw,68px);margin:22px 0;line-height:1.08}.hero h1 br:nth-of-type(3){display:none}.hero .eyebrow{font-size:10px;letter-spacing:1.5px}.hero-copy>p{font-size:16px;max-width:350px}.hero-actions{gap:24px;margin-top:26px}.hero-note{margin-top:28px;font-size:12px}.hero-photo{min-height:410px}.hero-photo img{object-position:center 60%}.image-top{top:28px;font-size:10px}.image-bottom>span{font-size:36px}.trust-strip{padding:22px 4%;font-size:11px}.section{padding:65px 7%}.section-head{display:block;margin-bottom:32px}.section-head>p{margin-top:23px;max-width:100%}.section-head .eyebrow,.eyebrow{font-size:10px;letter-spacing:1.8px}h2{font-size:43px;letter-spacing:-1.6px}.service-grid{grid-template-columns:1fr}.service-card{border-right:0;border-bottom:1px solid var(--line);padding:25px 26px}.card-top{margin-bottom:20px}.service-card h3 br{display:none}.service-card h3{font-size:31px}.service-card p{margin:16px 0 20px}.tags{margin-bottom:20px}.service-card a{font-size:14px}.about{grid-template-columns:1fr}.about-image{min-height:420px}.about-copy{padding:55px 7%}.about-copy h2{font-size:48px}.about-copy>p:not(.lead){font-size:16px}.about-copy .eyebrow{font-size:10px}.about-copy .lead{font-size:21px}.process .section-head .button{margin-top:27px}.steps{grid-template-columns:1fr;gap:30px;margin-top:38px}.steps article{padding-top:20px}.steps article>span{font-size:34px}.steps h3{margin:12px 0;font-size:26px}.steps p{max-width:none;font-size:16px}.questions{grid-template-columns:1fr;gap:30px}.questions>div>p{margin-top:23px}summary{font-size:15px;padding:22px 0}.contact h2{font-size:58px}.contact-intro>p{font-size:16px}.inquiry{padding:27px 22px}.inquiry>h3{font-size:27px}.form-row{grid-template-columns:1fr;gap:0}input,select,textarea{font-size:16px}footer{padding:35px 7% 25px}.footer-bottom{flex-direction:column;gap:10px}.contact-email{font-size:14px}.contact-phone{font-size:28px}.brand small{letter-spacing:2.6px}.hero-photo .image-bottom a{width:45px;height:45px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}

.eyebrow,.hero .eyebrow,.about-copy .eyebrow,.section-head .eyebrow,.tags,.image-top,.image-caption,.footer-bottom,.concept,.brand small{font-size:12px}.brand small{letter-spacing:2px}.vertical{font-size:12px}@media(max-width:560px){.concept{font-size:12px}.concept span{display:none}.hero .eyebrow{letter-spacing:1px}.brand small{font-size:10px}.contact-email{overflow-wrap:anywhere}.inquiry{min-width:0}}

nav a[aria-current="page"]{color:#94703c}nav a[aria-current="page"]:after{width:100%;background:#b49360}.page-intro{padding:74px 7% 72px;background:#e9eef1;border-bottom:1px solid #d7dfe5}.page-intro .eyebrow{color:#647686}.page-intro h1{font-size:clamp(48px,5.2vw,76px);margin:24px 0}.page-intro p{max-width:570px;font-size:18px}.page-cta{background:var(--navy);color:white;display:flex;align-items:center;justify-content:space-between;gap:40px;padding:65px 7%}.page-cta h2{font-size:42px;margin-top:15px}.page-cta h2 em{color:var(--gold)}.page-cta .eyebrow{color:#c4cfda}.home-about{text-align:center;padding:90px 7%;background:#e9eef1}.home-about h2{margin:22px 0}.home-about p{max-width:500px;margin:0 auto 28px}.detail-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.detail-columns article{border-top:1px solid #ccd6de;padding-top:25px}.detail-columns h3{font-size:27px;margin-bottom:18px}.detail-columns p{font-size:16px}.detail-columns article>span{font:italic 35px var(--serif);color:#a08151;display:block;margin-bottom:20px}.service-details{background:#e9eef1}.service-details h2{margin-top:20px}.scope-note{border-top:1px solid #ccd6de;margin-top:40px;padding-top:25px;font-size:14px;max-width:760px}.contact h1{font-size:clamp(50px,5.2vw,75px);margin:0}.contact h1 em{color:#637e91}.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact-options h2{margin-top:22px}.contact-options h3{margin-bottom:15px}.contact-options p{margin-bottom:30px}.contact-options .text-link{margin-top:0}@media(max-width:1100px){nav{gap:18px}.nav-cta{font-size:13px;padding:12px 16px}.nav-cta span{margin-left:10px}}@media(max-width:800px){.page-cta{align-items:flex-start;flex-direction:column}.contact-options{gap:40px}.detail-columns{gap:25px}}@media(max-width:560px){.page-intro{padding:50px 7%}.page-intro h1{font-size:49px}.page-intro p{font-size:16px}.detail-columns,.contact-options{grid-template-columns:1fr;gap:30px}.page-cta{padding:50px 7%}.page-cta h2{font-size:37px}.home-about{padding:65px 7%}.contact h1{font-size:58px}}

/* Soft, rounded surfaces throughout the five-page design. */
:root{--radius-panel:32px;--radius-card:22px;--radius-input:12px}
.button,.nav-cta{border-radius:999px}
.hero{gap:24px;padding:20px 3% 26px}
.hero-copy{border-radius:var(--radius-panel);padding-left:8%}
.hero-photo,.about-image{border-radius:var(--radius-panel);overflow:hidden}
.hero-photo{min-width:0}
.image-caption{border-radius:999px}
.trust-strip{margin:0 3%;border-radius:20px;gap:3.5%}
.service-grid{border:0;gap:18px}
.service-card,.service-card:last-child,.service-card:nth-child(2),.service-card:nth-child(-n+2){border:1px solid var(--line);border-radius:var(--radius-card);background:#fff}
.service-card:hover{box-shadow:0 14px 36px #1323360a}
.about{margin:0 3% 28px;border-radius:var(--radius-panel);gap:20px;padding:22px}
.about-copy{padding:58px 10%}
.page-intro,.home-about,.service-details,.process,.contact,.page-cta{margin:20px 3% 28px;border-radius:var(--radius-panel);border-bottom:0}
.page-intro{padding-left:5%;padding-right:5%}
.inquiry{border-radius:26px}
input,select,textarea{border:1px solid #d3dce3;border-radius:var(--radius-input);background:#f8fafb;padding:12px}
.faq details,.faq details:first-child{border:1px solid var(--line);border-radius:17px;margin-bottom:12px;background:#fff;padding:0 22px}
.faq details[open]{background:#f0f4f6}
.steps article{border:1px solid #ffffff28;border-radius:var(--radius-card);padding:28px;background:#ffffff04}
.detail-columns article{border:1px solid #d5dfe5;border-radius:var(--radius-card);padding:28px;background:#ffffff70}
.scope-note{border:0;background:#ffffff85;padding:22px 25px;border-radius:17px}
@media(max-width:1100px){.hero{gap:16px}.hero-copy{padding-left:6%;padding-right:5%}.trust-strip{gap:2.5%}.about-copy{padding:45px 7%}.service-grid{gap:14px}.steps{gap:22px}.steps article{padding:22px}.detail-columns article{padding:22px}}
@media(max-width:800px){.hero{padding:16px 3% 22px;gap:14px}.hero-copy{padding-left:6%;padding-right:5%}.about{padding:16px;gap:12px}.about-copy{padding:34px 6%}.trust-strip{gap:12px}nav.open{left:3%;right:3%;border:1px solid var(--line);border-radius:20px}.steps article{padding:20px}.detail-columns{gap:18px}}
@media(max-width:560px){:root{--radius-panel:24px;--radius-card:20px}.hero{padding:8px 4% 20px;gap:16px}.hero-copy{padding:30px 4% 8px}.hero-photo{min-height:400px}.trust-strip{margin:0 4%;border-radius:18px}.service-grid{gap:15px}.service-card,.service-card:last-child{padding:26px}.page-intro,.home-about,.service-details,.process,.contact,.page-cta{margin:16px 4% 24px}.page-intro{padding:42px 6%}.about{margin:0 4% 24px;padding:12px;gap:0}.about-image{min-height:390px;border-radius:19px}.about-copy{padding:35px 5%}.image-caption{left:15px;right:15px;text-align:center;padding:12px;font-size:11px;letter-spacing:1.3px}.inquiry{border-radius:20px;padding:25px 18px}.contact{padding:45px 5%;gap:32px}.contact h1{font-size:54px}.contact-email{font-size:13px}.faq details,.faq details:first-child{padding:0 18px}.steps article,.detail-columns article{padding:24px}.page-cta h2{font-size:35px}.button{gap:16px;padding:16px 21px}.inquiry .button{font-size:13px}}

/* Direct service booking, with the existing rounded design. */
.booking-note{padding:20px 25px;margin:-20px 0 30px;border:1px solid #d5dfe5;border-radius:20px;background:#edf2f5;max-width:800px}.booking-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:30px}.service-card a+a{margin-top:16px}.email-alternative{padding-top:24px;border-top:1px solid var(--line);margin-top:25px!important}@media(min-width:1101px){body:has(.service-details) .service-grid{grid-template-columns:repeat(3,1fr)}}
