@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#242B31;--ivory:#F7F5F0;--clay:#B17157;--sage:#8A9B8A;--slate:#5D6469;--line:#DAD6CF;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--ivory);color:var(--ink);font:16px/1.65 Inter,Arial,sans-serif}a{color:inherit}a:focus-visible{outline:3px solid var(--clay);outline-offset:4px}img{max-width:100%;height:auto}.container{width:min(1180px,calc(100% - 48px));margin:auto}.skip{position:absolute;left:-999px;top:5px;background:#fff;padding:10px;z-index:100}.skip:focus{left:12px}.header{position:sticky;top:0;background:rgba(247,245,240,.97);z-index:20;border-bottom:1px solid var(--line)}.nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{line-height:0}.brand img{width:210px}.nav nav{display:flex;align-items:center;gap:32px}.nav a{text-decoration:none}.nav nav a{font-size:13px;font-weight:600}.navcontact{border-bottom:1px solid var(--clay);padding-bottom:3px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif;line-height:1.16;letter-spacing:-.045em}h1{font-size:clamp(42px,5.15vw,78px);font-weight:600;margin:23px 0 28px}h2{font-size:clamp(36px,4vw,57px);font-weight:600}h3{font-size:25px;font-weight:600}h1 em,h2 em{font-style:normal;color:#95664f}.eyebrow{font-size:11px;letter-spacing:.19em;text-transform:uppercase;font-weight:700;color:#815640}.eyebrow b{padding:0 8px;font-weight:400}.hero{padding:85px 0 108px}.hero-grid{display:grid;grid-template-columns:1.55fr .85fr;gap:70px;align-items:center}.lead{font-size:clamp(20px,2.3vw,26px);font-weight:500;line-height:1.45;max-width:620px}.intro{font-size:15px;max-width:590px;color:var(--slate)}.actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap;margin-top:35px}.btn{display:inline-flex;gap:45px;justify-content:space-between;align-items:center;text-decoration:none;background:var(--ink);color:#fff;padding:15px 21px;font-size:13px;font-weight:600;min-height:50px;transition:background .2s,transform .2s}.btn:hover{background:#455159;transform:translateY(-2px)}.textlink{text-decoration:none;font-weight:600;font-size:13px;border-bottom:1px solid var(--clay);padding-bottom:5px}.hero-art{position:relative;min-height:440px;background:#E8E4DB;overflow:hidden;padding:25px;display:flex;flex-direction:column;justify-content:space-between}.art-label{font-size:12px;text-transform:uppercase;letter-spacing:.14em;z-index:1}.arch{position:absolute;width:240px;height:335px;background:var(--sage);border-radius:120px 120px 0 0;bottom:-35px;right:20px;transform:rotate(-17deg)}.small-circle{position:absolute;background:var(--clay);width:96px;height:96px;border-radius:50%;top:100px;right:65px}.art-note{font-family:Manrope;font-size:23px;line-height:1.3;letter-spacing:-.04em;z-index:1;align-self:flex-start}.section{padding:105px 0;scroll-margin-top:80px}.services{background:#fff}.section-head{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:48px}.section-head h2{max-width:680px;margin-bottom:0}.section-head p{max-width:310px;color:var(--slate);font-size:15px;margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.service{padding:38px 32px 36px}.service+.service{border-left:1px solid var(--line)}.service-no{font-size:12px;color:#95664f}.service h3{margin:28px 0 20px}.service p{color:var(--slate);font-size:14px;min-height:94px}.service ul{padding-left:18px;font-size:13px;line-height:1.85}.service li{padding-left:3px}.service-foot{margin:30px 0 0;font-size:14px}.service-foot a{color:#80543e;font-weight:600}.approach{background:var(--ivory)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;border-top:1px solid var(--line);padding-top:32px}.steps span{color:#865A45;font-size:12px;font-weight:700}.steps h3{margin:25px 0 12px}.steps p{font-size:14px;color:var(--slate)}.about{background:#E8E6DF}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:90px}.about-art{height:420px;background:#879889;position:relative;display:flex;padding:40px;overflow:hidden}.about-art>span{font:600 clamp(42px,4vw,60px)/1.12 Manrope;color:#fff;letter-spacing:-.05em;z-index:1}.about-art i{color:#242B31;font-style:normal}.line-art{position:absolute;width:280px;height:280px;border:35px solid #B17157;border-radius:50%;bottom:-145px;right:-80px}.about-copy p:not(.eyebrow){color:#444E53;font-size:15px}.contact{background:var(--ink);color:white;text-align:center}.contact-inner{max-width:770px}.contact .eyebrow{color:#D9AB96}.contact h2{margin:20px 0}.contact h2 em{color:#D9AB96}.contact p:not(.eyebrow){color:#E7E4DD}.contact .btn-light{background:#fff;color:var(--ink);margin-top:20px}.contact .btn-light:hover{background:#F1DFD5}.contact-note{font-size:12px;margin-top:25px}footer{padding:45px 0;background:var(--ivory)}.footer{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center}.footer img{width:190px}.footer p{font-size:13px;color:var(--slate)}.footer>div:nth-child(2){display:flex;gap:20px}.footer a{font-size:13px;text-decoration:none}.footer small{font-size:11px;color:var(--slate)}@media(max-width:850px){.hero-grid,.about-grid{grid-template-columns:1fr}.hero-art{display:none}.section-head{display:block}.section-head p{margin-top:22px}.cards{grid-template-columns:1fr}.service+.service{border-left:0;border-top:1px solid var(--line)}.service p{min-height:0}.steps{grid-template-columns:1fr;gap:14px}.about-grid{gap:36px}.about-art{height:280px}.nav nav{gap:15px}.section{padding:72px 0}}@media(max-width:540px){.container{width:min(100% - 36px,1180px)}.nav{min-height:74px;align-items:center}.brand img{width:155px}.nav nav a:not(.navcontact){display:none}.nav nav a{font-size:12px}.hero{padding:65px 0 80px}h1{font-size:43px}h2{font-size:36px}.actions{gap:20px}.service{padding:29px 25px}.footer{grid-template-columns:1fr}.footer>div:nth-child(2){flex-wrap:wrap}.about-art{height:240px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

/* v1.1 clarity and accessible mobile enhancements */
.questions{background:#fff}.faq-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 52px}.faq-list>div{border-top:1px solid var(--line);padding-top:22px}.faq-list h3{font-size:20px;letter-spacing:-.02em}.faq-list p{color:var(--slate);font-size:15px}.faq-list a{text-underline-offset:3px}.nav nav a{padding-block:10px}.btn{white-space:normal}.contact a:focus-visible{outline-color:#fff}.questions a:focus-visible{outline-color:var(--ink)}@media(max-width:700px){.faq-list{grid-template-columns:1fr;gap:16px}}@media(max-width:380px){h1{font-size:36px}.brand img{width:135px}.nav nav{gap:8px}.navcontact{font-size:11px!important}}

/* v1.3 accessible mobile navigation (native details/summary) */
.mobile-menu{display:none}
@media(max-width:540px){
  .nav>nav[aria-label="Main navigation"]{display:none}
  .mobile-menu{display:block;position:relative;flex-shrink:0}
  .mobile-menu summary{list-style:none;display:flex;align-items:center;gap:8px;cursor:pointer;font:600 13px/1.5 Inter,Arial,sans-serif;padding:12px 0 12px 10px;min-height:44px;border-bottom:1px solid var(--clay)}
  .mobile-menu summary::-webkit-details-marker{display:none}
  .mobile-menu summary:focus-visible,.mobile-menu nav a:focus-visible{outline:3px solid var(--clay);outline-offset:3px}
  .mobile-menu summary svg{transition:transform .15s ease}
  .mobile-menu[open] summary svg{transform:rotate(90deg)}
  .mobile-menu nav{position:absolute;right:0;top:calc(100% + 12px);z-index:30;min-width:min(280px,calc(100vw - 36px));display:flex;flex-direction:column;background:var(--ivory);border:1px solid var(--line);box-shadow:0 12px 25px rgba(36,43,49,.14);padding:8px}
  .mobile-menu nav a{display:block;text-decoration:none;font:600 14px/1.5 Inter,Arial,sans-serif;padding:13px 14px;min-height:44px;border-bottom:1px solid var(--line)}
  .mobile-menu nav a:last-child{border-bottom:0}
}
@media(prefers-reduced-motion:reduce){.mobile-menu summary svg{transition:none}}

/* Keep mobile dropdown links visible */
@media (max-width: 540px) {
  .nav .mobile-menu nav a {
    display: block;
  }
}
