@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,500;1,500&display=swap');
:root{--ink:#5D4A63;--ink2:#5D4A63;--paper:#F6F2EC;--paper2:#FBF8F4;--gold:#C4B2A3;--gold2:#E6D9CF;--muted:#7B6A64;--line:rgba(93,74,99,.14);--white:#fff;--radius:24px;--shadow:0 28px 75px rgba(93,74,99,.14);--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper2);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}::selection{background:var(--gold2);color:var(--ink)}.container{width:min(calc(100% - 40px),var(--max));margin:auto}.skip{position:fixed;left:20px;top:-100px;z-index:9999;background:#fff;padding:10px 14px;border-radius:8px;box-shadow:var(--shadow)}.skip:focus{top:20px}.topbar{background:var(--ink);color:#D4C5BE;font-size:11px}.topbar .container{display:flex;justify-content:flex-end;gap:26px;padding:9px 0}.site-header{position:sticky;top:0;z-index:1000;background:rgba(246,242,236,.9);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.nav{height:82px;display:flex;align-items:center;gap:30px}.brand{display:inline-flex;align-items:center;gap:12px;margin-right:auto}.brand-box{width:44px;height:44px;border:1px solid rgba(93,74,99,.16);border-radius:50%;display:grid;place-items:center;color:#5D4A63;font-family:Georgia,serif;font-size:13px;font-weight:700;background:#fff}.brand-text strong{display:block;font-size:14px;line-height:1.05;letter-spacing:.14em}.brand-text span{display:block;margin-top:4px;font-size:8px;letter-spacing:.3em;color:var(--muted)}.main-nav{display:flex;align-items:center;gap:25px;font-size:13px;font-weight:650}.main-nav a{position:relative}.main-nav a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--gold);transition:.25s}.main-nav a:hover:after{right:0}.lang{border-left:1px solid var(--line);padding-left:25px}.nav-cta{padding:11px 18px;border:1px solid var(--ink);border-radius:999px}.nav-cta:hover{background:var(--ink);color:#fff}.menu{display:none;border:0;background:none;padding:8px}.menu span{display:block;width:24px;height:2px;background:var(--ink);margin:5px}
/* motion field */.hero,.service-hero,.all-services-hero{position:relative;overflow:hidden;isolation:isolate}.hero-motion{position:absolute;inset:-40px;z-index:0;pointer-events:none;transition:transform .35s ease-out}.ledger-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(93,74,99,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(93,74,99,.04) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,#000,transparent 88%);animation:gridDrift 24s linear infinite}.orbit{position:absolute;border:1px solid rgba(93,74,99,.25);border-radius:50%;animation:orbitFloat 14s ease-in-out infinite}.orbit:after{content:"";position:absolute;width:10px;height:10px;background:var(--gold);border-radius:50%;top:50%;left:-5px;box-shadow:0 0 0 9px rgba(196,178,163,.08)}.orbit-a{width:520px;height:520px;right:-170px;top:35px}.orbit-b{width:260px;height:260px;left:44%;bottom:50px;animation-delay:-5s}.float-chip{position:absolute;display:grid;place-items:center;min-width:46px;height:46px;padding:0 10px;border-radius:14px;background:rgba(255,255,255,.76);border:1px solid rgba(93,74,99,.08);box-shadow:0 12px 34px rgba(93,74,99,.08);backdrop-filter:blur(8px);font-family:Georgia,serif;color:#5D4A63;font-weight:700;animation:chipFloat 7s ease-in-out infinite}.chip-a{right:10%;top:24%}.chip-b{left:47%;bottom:20%;animation-delay:-2s}.chip-c{right:33%;bottom:8%;animation-delay:-4s}.pulse-dot{position:absolute;width:7px;height:7px;background:var(--gold);border-radius:50%;animation:pulseDot 4s ease-in-out infinite}.dot-a{left:12%;bottom:23%}.dot-b{right:24%;bottom:18%;animation-delay:-2s}@keyframes gridDrift{to{background-position:44px 44px}}@keyframes orbitFloat{0%,100%{transform:translate3d(0,0,0) rotate(0)}50%{transform:translate3d(-20px,18px,0) rotate(12deg)}}@keyframes chipFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulseDot{0%,100%{box-shadow:0 0 0 0 rgba(196,178,163,.25);opacity:.5}50%{box-shadow:0 0 0 15px rgba(196,178,163,0);opacity:1}}
/* homepage hero */.hero{min-height:760px;padding:96px 0 86px;background:var(--paper)}.hero:after{content:"";position:absolute;width:440px;height:440px;border-radius:50%;background:rgba(196,178,163,.14);right:-120px;top:20px;filter:blur(2px);z-index:0}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.02fr .98fr;gap:72px;align-items:center;min-height:570px}.hero-copy{transition:transform .25s ease-out}.kicker,.section-label{display:inline-flex;align-items:center;gap:10px;font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#5D4A63}.kicker:before,.section-label:before{content:"";width:28px;height:1px;background:var(--gold)}h1,h2,h3,p{margin-top:0}.hero h1,.section h2,.detail-copy h2,.service-hero h1,.all-services-hero h1,.service-cta h2,.contact h2{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.045em;line-height:.98}.hero h1{font-size:clamp(54px,6vw,84px);margin:18px 0 22px;max-width:760px}.hero h1 em,.section h2 em,.detail-copy h2 em,.service-hero h1 em,.all-services-hero h1 em,.service-cta h2 em,.contact h2 em{color:#5D4A63;font-style:italic;font-weight:400}.hero-lead{max-width:650px;color:#7B6A64;font-size:18px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:31px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:52px;padding:0 22px;border:1px solid transparent;border-radius:999px;font-size:13px;font-weight:800;transition:transform .2s ease,background .2s ease,color .2s ease,border .2s ease;position:relative;overflow:hidden}.btn:hover{transform:translateY(-2px)}.btn:before,.nav-cta:before,.submit:before{content:"";position:absolute;inset:0;transform:translateX(-115%);background:linear-gradient(100deg,transparent,rgba(255,255,255,.3),transparent);transition:.55s}.btn:hover:before,.nav-cta:hover:before,.submit:hover:before{transform:translateX(115%)}.btn-yellow{background:var(--ink);color:#fff}.btn-yellow:hover{background:#5D4A63}.btn-dark-outline{border-color:rgba(93,74,99,.2);color:var(--ink)}.btn-dark-outline:hover{border-color:var(--ink)}.hero-side{display:grid;grid-template-columns:1fr;gap:14px;align-self:center}.hero-side .stat{min-height:150px;padding:0;border-radius:22px;background:rgba(255,255,255,.76);border:1px solid rgba(93,74,99,.08);box-shadow:0 16px 50px rgba(93,74,99,.06);backdrop-filter:blur(8px);display:grid;grid-template-columns:178px 1fr;align-items:stretch;transition:.3s;position:relative;overflow:hidden}.hero-side .stat:before{content:"";position:absolute;inset:auto -55px -75px auto;width:150px;height:150px;border-radius:50%;background:rgba(196,178,163,.08);pointer-events:none}.hero-side .stat:hover{transform:translateX(8px);box-shadow:var(--shadow);border-color:rgba(93,74,99,.22)}.stat-image{min-height:150px;overflow:hidden;background:#DCCDC2}.stat-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}.hero-side .stat:hover .stat-image img{transform:scale(1.045)}.stat-content{padding:20px 24px;display:grid;grid-template-columns:54px 1fr;grid-template-rows:auto auto;column-gap:14px;align-content:center;position:relative;z-index:1}.stat-num{grid-row:1/3;font-family:Georgia,serif;font-size:38px;color:#5D4A63;line-height:1}.stat-label{font-size:13px;color:var(--ink);font-weight:750;line-height:1.35}.stat-copy{display:block;font-size:11px;line-height:1.5;color:#8B7972;margin-top:7px;max-width:360px}.notice{background:var(--ink);color:#fff}.notice .container{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding:19px 0}.notice strong{font-size:10px;color:var(--gold2);letter-spacing:.14em}.notice p{margin:0;color:#D8CBC4;font-size:13px}.arrow{font-size:22px}
.section{padding:112px 0}.section-head{display:grid;grid-template-columns:.43fr 1fr;gap:70px;margin-bottom:55px}.section h2{font-size:clamp(43px,5vw,68px);margin:0}.section-intro{max-width:680px;font-size:16px;color:var(--muted);margin-top:20px}.services{background:var(--paper2)}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);border-radius:26px;overflow:hidden}.service-row{display:grid;grid-template-columns:52px 1fr 34px;grid-template-rows:auto 1fr;gap:12px 18px;padding:30px;min-height:240px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.25);position:relative;overflow:hidden;transition:.3s}.service-row p{grid-column:2/3;margin:0;color:var(--muted);font-size:13px}.service-row h3{margin:0;font-family:Georgia,serif;font-size:25px;font-weight:500}.service-n{font-family:Georgia,serif;color:#5D4A63;font-size:18px}.service-row .arrow{grid-column:3;grid-row:1;transition:.25s}.service-row:after{content:"";position:absolute;width:160px;height:160px;border-radius:50%;right:-95px;bottom:-95px;background:rgba(196,178,163,.1);transition:.3s}.service-row:hover{background:#fff;transform:translateY(-2px)}.service-row:hover:after{transform:scale(1.3)}.service-row:hover .arrow{transform:translateX(5px)}
.insights{background:var(--paper)}.insight-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:22px}.feature-card{min-height:500px;padding:43px;border-radius:28px;background:linear-gradient(130deg,#5D4A63,#5D4A63);color:#fff;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;box-shadow:var(--shadow);transition:transform .18s ease}.feature-card:before{content:"";position:absolute;width:420px;height:420px;border:62px solid rgba(196,178,163,.16);border-radius:50%;right:-160px;top:-180px}.feature-card>*{position:relative;z-index:1}.tag{font-size:9px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--gold2)}.feature-card h3{font-family:Georgia,serif;font-size:45px;line-height:1.04;font-weight:500;margin:18px 0}.feature-card p{color:#D7C9C2;max-width:570px}.side-cards{display:grid;gap:22px}.mini-card{min-height:239px;padding:28px;border-radius:24px;background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 12px 38px rgba(93,74,99,.05);transition:.25s}.mini-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.mini-card h3{font-family:Georgia,serif;font-size:28px;line-height:1.1;font-weight:500;margin:15px 0 10px}.mini-card p{color:var(--muted);font-size:13px}.mini-card .tag{color:#5D4A63}
.numbers{background:var(--ink);color:#fff}.numbers-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.numbers h2{color:#fff}.numbers h2 span{color:var(--gold2)}.metric-panel{padding:26px;border:1px solid rgba(255,255,255,.08);border-radius:26px;background:rgba(255,255,255,.035)}.metric{display:grid;grid-template-columns:1fr auto;align-items:center;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.08)}.metric:last-child{border-bottom:0}.metric strong{width:42px;height:42px;border:1px solid rgba(196,178,163,.35);border-radius:50%;display:grid;place-items:center;color:var(--gold2);font-size:18px;transition:.25s}.metric:hover strong{transform:scale(1.08) rotate(-5deg);background:rgba(196,178,163,.08)}.metric span{font-size:13px;color:#D2C2BA}.metric b{color:#fff}
.calculator{background:var(--paper)}.calc-wrap{display:grid;grid-template-columns:.82fr 1.18fr;gap:80px;align-items:center}.calc-card{padding:34px;border-radius:28px;background:#fff;box-shadow:var(--shadow);border:1px solid rgba(93,74,99,.06);transform-style:preserve-3d}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.calc-card label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#7B6A64}.calc-card input{width:100%;height:52px;border:1px solid var(--line);border-radius:13px;background:#FBF8F4;padding:0 14px;margin-top:8px;outline:0}.calc-card input:focus{border-color:#5D4A63;box-shadow:0 0 0 3px rgba(196,178,163,.14)}.field-full{grid-column:1/-1}.calc-result{margin-top:22px;padding:22px;border-radius:19px;background:var(--ink);color:#fff;display:flex;justify-content:space-between;align-items:end;gap:20px}.calc-result strong{display:block;color:var(--gold2);font-family:Georgia,serif;font-size:47px;font-weight:500;line-height:1}.calc-result span{font-size:11px;color:#C6B4AC}.bar{height:8px;border-radius:999px;background:#EFE7E0;margin-top:17px;overflow:hidden}.bar i{display:block;height:100%;background:var(--gold);width:0;border-radius:inherit;transition:.45s}
.process{background:var(--paper2)}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.step{padding:32px 27px 15px 0;position:relative;transition:.25s}.step b{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-family:Georgia,serif;color:#5D4A63;font-size:12px}.step h3{font-family:Georgia,serif;font-size:23px;font-weight:500;margin:30px 0 10px}.step p{font-size:13px;color:var(--muted)}.step:after{content:"";position:absolute;left:0;top:-2px;height:3px;width:0;background:var(--gold);transition:.35s}.step:hover:after{width:80%}.step:hover{transform:translateY(-4px)}
.contact{background:var(--ink);color:#fff;padding:105px 0}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.contact h2{font-size:clamp(48px,5.5vw,76px)}.contact-copy p{color:#C8B7AF;max-width:550px}.contact-copy strong{color:#fff}.contact-form{padding:34px;border-radius:26px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09)}.contact-form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-form label{display:block;margin-bottom:16px;color:#D0BFB7;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.contact-form input,.contact-form select,.contact-form textarea{width:100%;margin-top:7px;border:1px solid rgba(255,255,255,.1);outline:0;border-radius:12px;background:rgba(255,255,255,.045);color:#fff;padding:13px 14px}.contact-form select option{color:var(--ink)}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:rgba(196,178,163,.7);box-shadow:0 0 0 3px rgba(196,178,163,.1)}.submit{width:100%;border:0;border-radius:999px;background:var(--gold2);color:var(--ink);padding:15px 20px;font-weight:800;position:relative;overflow:hidden}.footer{background:#4C3A50;color:#9A8982;padding:65px 0 25px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:45px}.footer h3{color:#E2D8D2;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.footer a{display:block;font-size:12px;margin:9px 0}.footer a:hover{color:var(--gold2)}.footer .brand{display:inline-flex}.footer .brand-box{background:transparent;border-color:rgba(255,255,255,.16);color:var(--gold2)}.footer-bottom{border-top:1px solid rgba(255,255,255,.07);margin-top:45px;padding-top:20px;display:flex;justify-content:space-between;font-size:10px}
/* services listing */.all-services-hero{background:var(--paper);padding:90px 0 80px}.all-services-hero>.container{position:relative;z-index:2}.all-services-hero h1{font-size:clamp(54px,7vw,95px);max-width:980px;margin:22px 0}.all-services-hero p{max-width:760px;color:var(--muted);font-size:18px}.all-services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.all-service-card{min-height:290px;padding:30px;border:1px solid var(--line);border-radius:24px;background:#fff;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:.3s}.all-service-card:after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;right:-100px;bottom:-100px;background:rgba(196,178,163,.1)}.all-service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.all-service-card small{color:#5D4A63;font-weight:800}.all-service-card h2{font-family:Georgia,serif;font-size:31px;font-weight:500;margin:28px 0 12px}.all-service-card p{color:var(--muted);line-height:1.65}.all-service-card .arrow{margin-top:auto;padding-top:18px}
/* service detail */.service-hero{background:var(--paper);padding:70px 0 74px;min-height:590px;display:flex;align-items:center}.service-hero>.container{position:relative;z-index:2}.service-breadcrumb{display:flex;gap:9px;align-items:center;color:#8E7C74;font-size:12px;margin-bottom:40px}.service-breadcrumb a:hover{color:#5D4A63}.service-hero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:70px;align-items:end}.service-hero .section-label{margin-bottom:17px}.service-hero h1{font-size:clamp(49px,6vw,80px);max-width:950px;margin:0}.service-hero p{font-size:17px;line-height:1.7;color:#7B6A64;max-width:770px;margin-top:25px}.service-index{padding:28px;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.72);box-shadow:0 18px 50px rgba(93,74,99,.06);backdrop-filter:blur(8px)}.service-index small{color:#5D4A63;letter-spacing:.14em;font-size:9px;font-weight:800}.service-index strong{display:block;font-family:Georgia,serif;font-size:55px;color:#5D4A63;font-weight:500;margin:10px 0}.service-index p{font-size:13px;margin:0 0 22px}.service-index a{display:inline-flex;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:5px;font-size:12px;font-weight:800}.service-nav{background:rgba(251,250,247,.93);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);position:sticky;top:82px;z-index:15}.service-nav .container{display:flex;gap:28px;overflow:auto;scrollbar-width:none}.service-nav a{padding:16px 0;white-space:nowrap;font-size:12px;font-weight:700;border-bottom:2px solid transparent}.service-nav a:hover{border-color:var(--gold);color:#5D4A63}.detail-section{padding:100px 0}.detail-grid{display:grid;grid-template-columns:.45fr 1.55fr;gap:80px}.detail-copy h2{font-size:clamp(42px,5vw,66px);margin:0}.detail-copy>p{font-size:17px;line-height:1.78;color:var(--muted);margin-top:25px;max-width:850px}.deliverables{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:45px}.deliverable{display:flex;gap:15px;padding:19px;border:1px solid var(--line);border-radius:16px;background:#fff;font-size:14px;line-height:1.55;transition:.25s}.deliverable:hover{transform:translateY(-3px);box-shadow:0 13px 35px rgba(93,74,99,.06);border-color:rgba(93,74,99,.25)}.deliverable b{color:#5D4A63;font-size:11px;flex:0 0 auto;margin-top:3px}.fit-section{background:var(--paper)}.fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:start}.fit-list{counter-reset:fit}.fit-item{counter-increment:fit;border-top:1px solid var(--line);padding:22px 0;display:grid;grid-template-columns:48px 1fr;gap:15px;font-size:16px;line-height:1.5}.fit-item:before{content:'0' counter(fit);font-family:Georgia,serif;font-size:13px;color:#5D4A63;margin-top:3px}.service-process{background:var(--ink);color:#fff}.service-process .detail-copy>p{color:#D5C7C0}.service-process .section-label{color:var(--gold2)}.service-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:50px}.service-process-step{padding:28px;border:1px solid rgba(255,255,255,.08);border-radius:20px;background:rgba(255,255,255,.035);min-height:250px;transition:.3s}.service-process-step:hover{transform:translateY(-5px);background:rgba(255,255,255,.055)}.service-process-step b{color:var(--gold2);font-size:11px}.service-process-step h3{font-family:Georgia,serif;font-size:24px;font-weight:500;margin:38px 0 13px}.service-process-step p{color:#D5C7C0;line-height:1.6;font-size:14px}.faq-wrap{max-width:940px;margin-left:auto}.faq-item{border-top:1px solid var(--line)}.faq-item:last-child{border-bottom:1px solid var(--line)}.faq-q{width:100%;background:none;border:0;text-align:left;padding:24px 0;display:flex;justify-content:space-between;gap:25px;font-family:Georgia,serif;font-size:20px;cursor:pointer;color:var(--ink)}.faq-q span{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-family:Inter,sans-serif;font-size:16px;transition:.25s}.faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}.faq-a>div{overflow:hidden}.faq-a p{padding:0 60px 23px 0;color:var(--muted);line-height:1.7}.faq-item.open .faq-a{grid-template-rows:1fr}.faq-item.open .faq-q span{transform:rotate(45deg);background:var(--ink);color:#fff}.related{background:var(--paper2)}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:42px}.related-card{padding:27px;border:1px solid var(--line);border-radius:21px;background:#fff;min-height:235px;display:flex;flex-direction:column;transition:.3s}.related-card small{color:#5D4A63;font-weight:800}.related-card h3{font-family:Georgia,serif;font-size:26px;font-weight:500;margin:29px 0 10px}.related-card p{color:var(--muted);line-height:1.55;font-size:13px}.related-card .arrow{margin-top:auto;padding-top:18px}.related-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.service-cta{background:var(--gold2);padding:78px 0}.service-cta-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:60px;align-items:end}.service-cta h2{font-size:clamp(44px,5.5vw,72px);margin:10px 0}.service-cta p{font-size:16px;max-width:700px}.service-cta .btn{background:var(--ink);color:#fff;width:100%}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){.main-nav{display:none}.menu{display:block}.main-nav.open{display:flex;position:absolute;left:0;right:0;top:82px;background:var(--paper2);flex-direction:column;align-items:flex-start;padding:28px 24px;border-bottom:1px solid var(--line)}.lang{border:0;padding-left:0}.hero-grid,.service-hero-grid,.detail-grid,.fit-grid,.service-cta-grid,.numbers-grid,.calc-wrap,.contact-grid{grid-template-columns:1fr}.hero-side{grid-template-columns:1fr}.section-head{grid-template-columns:1fr;gap:20px}.service-grid,.all-services-grid{grid-template-columns:1fr}.insight-grid{grid-template-columns:1fr}.side-cards{grid-template-columns:1fr 1fr}.process-grid,.service-process-grid{grid-template-columns:1fr 1fr}.related-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.service-nav{top:82px}}
@media(max-width:650px){.container{width:min(calc(100% - 30px),var(--max))}.topbar{display:none}.nav{height:70px}.main-nav.open{top:70px}.hero{padding:60px 0}.hero-grid{gap:38px;min-height:0}.hero h1{font-size:50px}.hero-side{grid-template-columns:1fr}.hero-side .stat{min-height:0;grid-template-columns:112px 1fr}.stat-image{min-height:132px}.stat-content{padding:16px;grid-template-columns:43px 1fr;column-gap:9px}.stat-num{font-size:30px}.stat-label{font-size:12px}.stat-copy{font-size:10px}.notice .container{grid-template-columns:1fr auto}.notice strong{grid-column:1/-1}.section{padding:78px 0}.section h2{font-size:43px}.service-row{grid-template-columns:42px 1fr 28px;padding:23px}.side-cards{grid-template-columns:1fr}.feature-card{min-height:440px;padding:28px}.feature-card h3{font-size:35px}.field-grid,.contact-form .row{grid-template-columns:1fr}.process-grid,.service-process-grid,.related-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.service-hero{min-height:0;padding:55px 0}.service-hero h1{font-size:49px}.service-nav{top:70px}.detail-section{padding:74px 0}.deliverables{grid-template-columns:1fr}.service-cta{padding:60px 0}.all-services-hero{padding:60px 0}.all-services-hero h1{font-size:52px}.float-chip{display:none}.orbit-a{width:360px;height:360px;right:-210px}.orbit-b{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ledger-grid,.orbit,.float-chip,.pulse-dot{animation:none!important}.hero-copy,.feature-card,.mini-card,.calc-card{transform:none!important}.reveal{transition:none}}


/* Contact page — distinct destination, same Arco V&S visual language */
.contact-page .site-header{background:rgba(251,250,247,.97)}
.contact-hero-special{position:relative;overflow:hidden;background:#5D4A63;color:#fff;padding:58px 0 92px;min-height:690px;display:flex;align-items:center}
.contact-hero-special>.container{position:relative;z-index:2}
.contact-hero-pattern{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.contact-hero-pattern:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.026) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 1px);background-size:74px 74px;mask-image:linear-gradient(to right,#000,rgba(0,0,0,.35))}
.contact-line{position:absolute;height:1px;background:linear-gradient(90deg,transparent,rgba(196,178,163,.48),transparent);width:54%;transform:rotate(-18deg)}
.contact-line.line-1{right:-9%;top:28%}.contact-line.line-2{left:-20%;bottom:18%;transform:rotate(13deg);opacity:.55}
.contact-ring{position:absolute;border:1px solid rgba(196,178,163,.2);border-radius:50%}
.contact-ring.ring-1{width:520px;height:520px;right:-120px;top:-150px}.contact-ring.ring-2{width:250px;height:250px;right:19%;bottom:-130px;border-color:rgba(255,255,255,.08)}
.contact-dot{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--gold2);box-shadow:0 0 0 9px rgba(196,178,163,.08)}
.c-dot-1{right:11%;top:31%}.c-dot-2{left:8%;bottom:20%;width:5px;height:5px;opacity:.7}
.contact-kicker{display:flex;align-items:center;gap:16px;color:#C4B2A3;font-size:9px;font-weight:800;letter-spacing:.18em;margin-bottom:52px}
.contact-kicker-line{display:block;width:62px;height:1px;background:rgba(196,178,163,.48)}
.contact-hero-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.55fr);gap:90px;align-items:end}
.contact-hero-copy{position:relative;min-width:0}
.contact-word{position:absolute;left:-3px;top:-68px;font-size:clamp(70px,10vw,145px);line-height:.8;font-weight:900;letter-spacing:-.07em;color:rgba(255,255,255,.025);white-space:nowrap;user-select:none}
.contact-hero-copy h1{position:relative;font-family:Georgia,serif;font-size:clamp(58px,7vw,98px);font-weight:500;line-height:.94;letter-spacing:-.045em;margin:0;max-width:930px}
.contact-hero-copy h1 em{color:var(--gold2);font-weight:500}
.contact-hero-copy>p{font-size:17px;line-height:1.72;color:#D5C7C0;max-width:690px;margin:30px 0 0}
.contact-hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:34px}
.contact-text-link{color:#fff;font-size:13px;font-weight:700;border-bottom:1px solid rgba(255,255,255,.22);padding-bottom:4px;transition:.25s}.contact-text-link:hover{color:var(--gold2);border-color:var(--gold2)}
.contact-signature-card{background:#D8C8BC;color:var(--ink);padding:34px;border-radius:2px 28px 2px 28px;min-height:390px;display:flex;flex-direction:column;box-shadow:0 30px 70px rgba(0,0,0,.18);position:relative;overflow:hidden}
.contact-signature-card:after{content:"";position:absolute;width:210px;height:210px;border:1px solid rgba(93,74,99,.2);border-radius:50%;right:-95px;bottom:-85px}
.contact-card-eyebrow{font-size:9px;letter-spacing:.15em;font-weight:800;color:#5D4A63}
.contact-monogram{font-family:Georgia,serif;font-size:42px;color:#5D4A63;margin:50px 0 24px}
.contact-signature-card h2{font-family:Georgia,serif;font-size:31px;line-height:1.05;font-weight:500;margin:0;max-width:320px}
.contact-signature-card p{color:#7B6A64;font-size:13px;line-height:1.65;margin:18px 0 0;max-width:320px}
.contact-card-rule{height:1px;background:rgba(93,74,99,.16);margin:auto 0 18px}
.contact-signature-card a{position:relative;z-index:2;font-size:11px;font-weight:800;display:flex;gap:10px;align-items:center;justify-content:space-between;word-break:break-word}
.contact-methods-special{background:var(--paper);padding:0 0 100px}
.contact-method-grid{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border:1px solid var(--line);border-top:0;box-shadow:0 24px 60px rgba(93,74,99,.055)}
.contact-method{padding:34px 30px 30px;min-height:250px;border-right:1px solid var(--line);position:relative;display:flex;flex-direction:column;transition:.3s;background:#fff}
.contact-method:last-child{border-right:0}.contact-method:hover{background:#F2EBE5}.contact-method:hover .method-icon{transform:translate(3px,-3px);border-color:#5D4A63;color:#5D4A63}
.method-no{font-family:Georgia,serif;color:#5D4A63;font-size:13px}.method-icon{position:absolute;right:28px;top:27px;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:13px;transition:.25s}
.contact-method>div{margin-top:auto}.contact-method small{display:block;color:#5D4A63;font-weight:800;letter-spacing:.13em;font-size:9px;margin-bottom:10px}.contact-method strong{display:block;font-family:Georgia,serif;font-size:24px;font-weight:500;color:var(--ink);margin-bottom:10px}.contact-method p{color:var(--muted);font-size:12px;line-height:1.6;max-width:300px;margin:0}
.contact-form-special{background:#EFE7E0;padding:110px 0 120px;position:relative;overflow:hidden}
.contact-form-special:before{content:"";position:absolute;width:390px;height:390px;border:1px solid rgba(93,74,99,.12);border-radius:50%;left:-230px;top:90px}
.contact-form-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px;align-items:start;position:relative;z-index:2}
.contact-form-intro .section-label{color:#5D4A63;margin-bottom:22px}.contact-form-intro h2{font-family:Georgia,serif;font-size:clamp(48px,5vw,68px);font-weight:500;line-height:1.02;letter-spacing:-.035em;margin:0}.contact-form-intro h2 em{color:#5D4A63;font-weight:500}.contact-form-intro>p{color:var(--muted);line-height:1.72;font-size:15px;margin:24px 0 0;max-width:530px}
.what-next{margin-top:52px;border-top:1px solid rgba(93,74,99,.14)}.what-next-title{display:block;font-size:9px;letter-spacing:.15em;font-weight:800;color:#5D4A63;padding:20px 0 10px}.next-step{display:grid;grid-template-columns:42px 1fr;gap:12px;padding:17px 0;border-bottom:1px solid rgba(93,74,99,.1);font-size:13px;line-height:1.55;color:#7B6A64}.next-step b{font-family:Georgia,serif;color:#5D4A63;font-weight:500}
.contact-form-shell{background:#fff;border-radius:24px;padding:16px 34px 34px;box-shadow:0 28px 80px rgba(93,74,99,.09);border:1px solid rgba(93,74,99,.06)}
.form-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:13px 0 17px;margin-bottom:26px;color:#5D4A63;font-size:9px;font-weight:800;letter-spacing:.14em}
.contact-form-light{background:transparent;padding:0;color:var(--ink);border-radius:0}
.contact-form-light label{color:#7B6A64;font-size:10px;font-weight:800;letter-spacing:.02em}
.contact-form-light input,.contact-form-light select,.contact-form-light textarea{background:#FBF8F4;color:var(--ink);border:1px solid #DDD0C7;border-radius:10px;padding:14px 14px;margin-top:8px;transition:.2s}
.contact-form-light select option{color:var(--ink)}
.contact-form-light input:focus,.contact-form-light select:focus,.contact-form-light textarea:focus{border-color:#5D4A63;box-shadow:0 0 0 3px rgba(93,74,99,.1);background:#fff}
.contact-submit{margin-top:4px;border-radius:10px;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:16px 18px}.contact-submit:hover{background:#5D4A63}.form-note{font-size:10px;color:#9A8982;line-height:1.5;margin:12px 2px 0}
@media(max-width:980px){.contact-hero-layout,.contact-form-layout{grid-template-columns:1fr;gap:48px}.contact-signature-card{max-width:560px;min-height:340px}.contact-method-grid{grid-template-columns:1fr}.contact-method{border-right:0;border-bottom:1px solid var(--line);min-height:190px}.contact-method:last-child{border-bottom:0}.contact-word{font-size:100px}.contact-form-special{padding:85px 0}}
@media(max-width:650px){.contact-hero-special{padding:45px 0 65px;min-height:0}.contact-kicker{margin-bottom:38px}.contact-hero-copy h1{font-size:52px}.contact-word{font-size:68px;top:-38px}.contact-hero-copy>p{font-size:15px}.contact-signature-card{padding:26px;min-height:315px}.contact-monogram{margin:38px 0 20px}.contact-methods-special{padding-bottom:74px}.contact-method{padding:28px 24px}.contact-form-special{padding:72px 0 82px}.contact-form-layout{gap:42px}.contact-form-intro h2{font-size:44px}.contact-form-shell{padding:14px 20px 24px;border-radius:18px}.contact-hero-actions{align-items:flex-start;flex-direction:column}.contact-ring.ring-1{width:320px;height:320px;right:-190px}.contact-line{width:90%}}
@media(prefers-reduced-motion:reduce){.contact-method,.method-icon{transition:none}}

/* Floating WhatsApp contact button */
.whatsapp-float{
  position:fixed;
  right:24px;
  bottom:24px;
  width:58px;
  height:58px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#25D366;
  color:#fff;
  z-index:9999;
  box-shadow:0 14px 34px rgba(93,74,99,.24);
  border:1px solid rgba(255,255,255,.55);
  transition:transform .22s ease,box-shadow .22s ease,background .22s ease;
}
.whatsapp-float:hover{
  transform:translateY(-3px) scale(1.04);
  background:#20bd5a;
  box-shadow:0 18px 42px rgba(93,74,99,.3);
}
.whatsapp-float:focus-visible{
  outline:3px solid rgba(93,74,99,.55);
  outline-offset:4px;
}
.whatsapp-float svg{width:30px;height:30px;display:block;fill:currentColor}
.whatsapp-float .whatsapp-tooltip{
  position:absolute;
  right:70px;
  top:50%;
  transform:translateY(-50%);
  white-space:nowrap;
  background:#5D4A63;
  color:#fff;
  font-size:11px;
  font-weight:700;
  letter-spacing:.01em;
  padding:9px 11px;
  border-radius:8px;
  opacity:0;
  pointer-events:none;
  transition:opacity .2s ease,transform .2s ease;
  box-shadow:0 10px 25px rgba(93,74,99,.16);
}
.whatsapp-float:hover .whatsapp-tooltip,.whatsapp-float:focus-visible .whatsapp-tooltip{
  opacity:1;
  transform:translate(-3px,-50%);
}
@media(max-width:650px){
  .whatsapp-float{right:16px;bottom:16px;width:54px;height:54px}
  .whatsapp-float svg{width:28px;height:28px}
  .whatsapp-float .whatsapp-tooltip{display:none}
}
@media(prefers-reduced-motion:reduce){.whatsapp-float,.whatsapp-float .whatsapp-tooltip{transition:none}}


/* Plum-primary palette refinement */
:root{--ink:#5D4A63;--ink2:#8A6F7C;--paper:#F6F2EC;--paper2:#FBF8F4;--gold:#C4B2A3;--gold2:#E6D9CF;--muted:#7B6A64;--line:rgba(93,74,99,.14);--shadow:0 28px 75px rgba(93,74,99,.16)}
.topbar{background:#5D4A63}
.brand-box,.hero h1 em,.section h2 em,.detail-copy h2 em,.service-hero h1 em,.all-services-hero h1 em,.service-cta h2 em,.contact h2 em,.stat-num,.service-n,.contact-monogram,.next-step b{color:#8A6F7C}
.kicker,.section-label,.contact-card-eyebrow,.contact-form-intro .section-label,.form-heading{color:#8A6F7C}
.kicker:before,.section-label:before{background:#C4B2A3}
.nav-cta{border-color:#5D4A63}.nav-cta:hover{background:#5D4A63}
.btn-yellow{background:#5D4A63}.btn-yellow:hover{background:#8A6F7C}
.feature-card{background:linear-gradient(130deg,#5D4A63 0%,#5D4A63 55%,#8A6F7C 100%)}
.notice{background:#5D4A63}
.service-row:hover{border-color:rgba(93,74,99,.16)}
.contact-hero-special{background:#5D4A63}
.contact-signature-card{background:#C4B2A3}.contact-signature-card h2,.contact-signature-card a{color:#5D4A63}
.contact-method:hover .method-icon{border-color:#5D4A63;color:#5D4A63}
.contact-method small{color:#8A6F7C}
.contact-form-intro h2 em{color:#8A6F7C}
.contact-form-light input:focus,.contact-form-light select:focus,.contact-form-light textarea:focus{border-color:#5D4A63;box-shadow:0 0 0 3px rgba(93,74,99,.1)}
.contact-submit{background:#5D4A63}.contact-submit:hover{background:#8A6F7C}
.whatsapp-float .whatsapp-tooltip{background:#5D4A63}

/* Official Arco V&S logo integration */
.brand-image{display:inline-flex;align-items:center;margin-right:auto;line-height:0}
.brand-image img{display:block;width:auto;height:54px;max-width:190px;object-fit:contain}
.site-header .brand-image img{height:55px}
.footer .brand-footer-image img{width:112px;height:112px;max-width:none;border-radius:50%;object-fit:cover}
.footer .brand-footer-image{margin-right:0}
@media(max-width:760px){.site-header .brand-image img{height:46px;max-width:160px}.footer .brand-footer-image img{width:96px;height:96px}}

/* Brand update: circular logo in the site header */
.site-header .brand-image img{width:58px;height:58px;max-width:58px;border-radius:50%;object-fit:cover}
@media(max-width:760px){.site-header .brand-image img{width:48px;height:48px;max-width:48px}}

/* Seamless horizontal brand lockup in navigation */
.site-header .brand-image{
  min-width:0;
  padding:0;
  margin-right:auto;
}
.site-header .brand-image img{
  width:auto;
  height:62px;
  max-width:220px;
  border-radius:0;
  object-fit:contain;
  mix-blend-mode:normal;
}
@media(max-width:760px){
  .site-header .brand-image img{
    height:50px;
    max-width:170px;
  }
}

/* Team section */
.team-section{background:#F1EAE4;position:relative;overflow:hidden}
.team-section:before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(93,74,99,.11);border-radius:50%;right:-280px;top:90px;pointer-events:none}
.team-heading{display:grid;grid-template-columns:.43fr 1fr;gap:70px;margin-bottom:66px;position:relative;z-index:1}
.team-heading h2{font-size:clamp(43px,5vw,68px);margin:0;font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.045em;line-height:.98}
.team-heading h2 em{color:#8A6F7C;font-weight:400}
.team-list{display:grid;gap:32px;position:relative;z-index:1}
.team-profile{display:grid;grid-template-columns:minmax(330px,.82fr) minmax(0,1.18fr);min-height:620px;background:#fff;border:1px solid rgba(93,74,99,.10);border-radius:28px;overflow:hidden;box-shadow:0 26px 65px rgba(93,74,99,.08);transition:transform .3s ease,box-shadow .3s ease}
.team-profile:hover{transform:translateY(-5px);box-shadow:0 34px 80px rgba(93,74,99,.13)}
.team-profile-reverse{grid-template-columns:minmax(0,1.18fr) minmax(330px,.82fr)}
.team-profile-reverse .team-photo{order:2}
.team-profile-reverse .team-bio{order:1}
.team-photo{position:relative;overflow:hidden;min-height:620px;background:#C4B2A3}
.team-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(93,74,99,.14),transparent 38%);pointer-events:none}
.team-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 35%;transition:transform .7s cubic-bezier(.2,.75,.25,1)}
.team-profile:hover .team-photo img{transform:scale(1.025)}
.team-bio{position:relative;padding:58px 62px 52px;display:flex;flex-direction:column;justify-content:center}
.team-index{position:absolute;right:36px;top:29px;font-family:Georgia,serif;font-size:62px;line-height:1;color:rgba(93,74,99,.08)}
.team-role{font-size:10px;line-height:1.5;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:#8A6F7C;margin-bottom:15px;padding-right:65px}
.team-bio h3{font-family:Georgia,"Times New Roman",serif;font-size:clamp(39px,4vw,56px);line-height:.96;letter-spacing:-.035em;font-weight:500;color:#5D4A63;margin:0 0 25px}
.team-bio blockquote{position:relative;margin:0 0 27px;padding:20px 0 20px 25px;border-left:2px solid #C4B2A3;font-family:Georgia,"Times New Roman",serif;font-size:20px;line-height:1.45;font-style:italic;color:#8A6F7C;max-width:680px}
.team-bio p{color:#7B6A64;font-size:14px;line-height:1.78;margin:0 0 17px;max-width:760px}
.team-bio p:last-child{margin-bottom:0}
@media(max-width:980px){.team-heading{grid-template-columns:1fr;gap:24px}.team-profile,.team-profile-reverse{grid-template-columns:1fr;min-height:0}.team-profile-reverse .team-photo,.team-profile-reverse .team-bio{order:initial}.team-photo{min-height:560px;max-height:720px}.team-bio{padding:46px 42px 44px}}
@media(max-width:650px){.team-section{padding:78px 0}.team-heading{margin-bottom:42px}.team-heading h2{font-size:44px}.team-list{gap:22px}.team-profile{border-radius:20px}.team-photo{min-height:430px}.team-bio{padding:38px 25px 34px}.team-index{right:20px;top:22px;font-size:48px}.team-role{padding-right:48px;font-size:9px}.team-bio h3{font-size:39px;margin-bottom:22px}.team-bio blockquote{font-size:18px;padding:16px 0 16px 18px}.team-bio p{font-size:13px;line-height:1.72}}
@media(prefers-reduced-motion:reduce){.team-profile,.team-photo img{transition:none}}

/* GitHub Pages-safe header logo containment */
.site-header .nav{
  min-height:82px;
  height:82px;
  overflow:visible;
}
.site-header .brand-image{
  flex:0 0 150px !important;
  width:150px !important;
  max-width:150px !important;
  height:68px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  overflow:hidden !important;
  margin-right:auto !important;
}
.site-header .brand-image img{
  display:block !important;
  width:122px !important;
  max-width:122px !important;
  height:auto !important;
  max-height:66px !important;
  object-fit:contain !important;
  border-radius:0 !important;
  flex:none !important;
}
@media(max-width:980px){
  .site-header .brand-image{flex-basis:124px !important;width:124px !important;max-width:124px !important;height:64px !important}
  .site-header .brand-image img{width:110px !important;max-width:110px !important;max-height:60px !important}
}
@media(max-width:760px){
  .site-header .nav{height:72px;min-height:72px}
  .site-header .brand-image{flex-basis:108px !important;width:108px !important;max-width:108px !important;height:58px !important}
  .site-header .brand-image img{width:98px !important;max-width:98px !important;max-height:54px !important}
}


/* About us section */
.about-section{background:var(--paper2);position:relative;overflow:hidden}
.about-section:before{content:"";position:absolute;width:460px;height:460px;border-radius:50%;border:1px solid rgba(93,74,99,.09);left:-260px;bottom:-210px;pointer-events:none}
.about-intro{display:grid;grid-template-columns:.43fr 1fr;gap:70px;align-items:start;margin-bottom:56px;position:relative;z-index:1}
.about-intro h2{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.045em;line-height:.98;font-size:clamp(43px,5vw,68px);margin:0}
.about-intro h2 em{color:#8A6F7C;font-style:italic;font-weight:400}
.about-lead{font-size:17px;line-height:1.8;color:var(--muted);max-width:820px;margin:25px 0 0}
.about-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:24px;position:relative;z-index:1}
.about-card{position:relative;border:1px solid rgba(93,74,99,.11);border-radius:28px;background:#fff;padding:48px 46px 44px;box-shadow:0 22px 60px rgba(93,74,99,.06);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.about-card:hover{transform:translateY(-5px);box-shadow:0 30px 74px rgba(93,74,99,.11);border-color:rgba(93,74,99,.22)}
.about-card-accent{background:#5D4A63;color:#fff;border-color:#5D4A63}
.about-card-accent:hover{border-color:#5D4A63}
.about-number{position:absolute;right:28px;top:20px;font-family:Georgia,"Times New Roman",serif;font-size:76px;line-height:1;color:rgba(93,74,99,.07)}
.about-card-accent .about-number{color:rgba(255,255,255,.09)}
.about-card-content{position:relative;z-index:1}
.about-eyebrow{font-size:10px;font-weight:800;letter-spacing:.16em;color:#8A6F7C;margin-bottom:18px}
.about-card-accent .about-eyebrow{color:#E6D9CF}
.about-card h3{font-family:Georgia,"Times New Roman",serif;font-size:clamp(31px,3.4vw,48px);font-weight:500;letter-spacing:-.035em;line-height:1.02;margin:0 0 26px;max-width:700px;color:#5D4A63}
.about-card-accent h3{color:#fff}
.about-card p{font-size:14px;line-height:1.82;color:#7B6A64;margin:0 0 17px;max-width:850px}
.about-card-accent p{color:#E8DED9}
.about-card p:last-child{margin-bottom:0}
@media(max-width:980px){.about-intro{grid-template-columns:1fr;gap:24px}.about-grid{grid-template-columns:1fr}.about-card{padding:42px 38px}}
@media(max-width:650px){.about-section{padding:78px 0}.about-intro{margin-bottom:38px}.about-intro h2{font-size:44px}.about-lead{font-size:15px}.about-card{padding:38px 25px 34px;border-radius:20px}.about-number{font-size:54px;right:18px;top:18px}.about-card h3{font-size:34px;padding-right:26px}.about-card p{font-size:13px;line-height:1.75}}
@media(prefers-reduced-motion:reduce){.about-card{transition:none}}

/* 2026-10-13 — stable desktop nav hover states
   Prevent the language switcher underline and CTA shine pseudo-element from
   repainting/jittering on hover while preserving the existing visual design. */
@media (min-width:981px){
  .main-nav .lang{
    display:inline-flex;
    align-items:center;
    min-height:42px;
    padding-left:25px;
    transition:color .2s ease,opacity .2s ease;
    transform:none!important;
    backface-visibility:hidden;
  }
  .main-nav .lang::after{
    content:none!important;
    display:none!important;
  }
  .main-nav .lang:hover{
    color:#8A6F7C;
    transform:none!important;
  }
  .main-nav .nav-cta{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    transform:none!important;
    backface-visibility:hidden;
    transition:background-color .2s ease,color .2s ease,border-color .2s ease;
  }
  .main-nav .nav-cta::before{
    content:none!important;
    display:none!important;
  }
  .main-nav .nav-cta:hover{
    background:#5D4A63;
    color:#fff;
    border-color:#5D4A63;
    transform:none!important;
  }
}

/* 2026-10-15 service portfolio refresh */
.service-thumb{grid-column:1/-1;height:165px;border-radius:16px;overflow:hidden;margin:-8px -8px 10px}.service-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}.service-row.has-image{grid-template-rows:auto auto 1fr;min-height:390px}.service-row.has-image:hover .service-thumb img{transform:scale(1.035)}.service-row.has-image .service-n,.service-row.has-image h3,.service-row.has-image .arrow{grid-row:2}.service-row.has-image p{grid-row:3}.all-service-card.has-image{padding:0;min-height:445px}.all-service-card-image{height:210px;overflow:hidden}.all-service-card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}.all-service-card.has-image:hover .all-service-card-image img{transform:scale(1.035)}.all-service-card-body{padding:28px;display:flex;flex-direction:column;flex:1}.all-service-card-body .arrow{margin-top:auto}.service-visual-card{border-radius:24px;overflow:hidden;border:1px solid var(--line);background:rgba(255,255,255,.78);box-shadow:0 18px 50px rgba(93,74,99,.08)}.service-visual-card>img{width:100%;height:255px;object-fit:cover;display:block}.service-visual-card .service-index{border:0;border-radius:0;box-shadow:none;background:transparent}.deliverable strong{font-weight:800;color:var(--ink)}
@media(max-width:650px){.service-thumb{height:145px}.service-row.has-image{min-height:360px}.all-service-card-image{height:190px}.service-visual-card>img{height:220px}}

/* Contact scheduling fields */
.contact-form input[type="datetime-local"]{min-height:48px;cursor:pointer}
.contact:not(.contact-form-special) .contact-form input[type="datetime-local"]{color-scheme:dark}
.contact-form-light input[type="datetime-local"]{color-scheme:light}

/* Branded scheduling calendar */
.form-field{display:block;margin-bottom:16px}.form-field-label{display:block;color:#D0BFB7;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.contact-form-light .form-field-label{color:#7B6A64;font-weight:800;letter-spacing:.02em}.schedule-picker,.schedule-field{position:relative}.schedule-field.is-open{z-index:80}.schedule-trigger{width:100%;min-height:50px;margin-top:7px;padding:12px 14px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.045);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left;font:inherit;cursor:pointer;transition:border-color .2s,box-shadow .2s,background .2s}.contact-form-light .schedule-trigger{background:#FBF8F4;color:var(--ink);border-color:#DDD0C7;border-radius:10px}.schedule-trigger:hover,.schedule-trigger:focus-visible{border-color:#8A6F7C;box-shadow:0 0 0 3px rgba(138,111,124,.12);outline:0}.schedule-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:rgba(138,111,124,.12);color:#8A6F7C;font-size:17px;flex:0 0 auto}.schedule-popover{position:absolute;z-index:50;left:0;top:calc(100% + 10px);width:min(390px,calc(100vw - 42px));padding:18px;border:1px solid rgba(93,74,99,.12);border-radius:20px;background:#F6F2EC;color:#352B39;box-shadow:0 24px 70px rgba(54,39,60,.18)}.schedule-popover[hidden]{display:none}.schedule-head{display:grid;grid-template-columns:38px 1fr 38px;align-items:center;gap:8px;margin-bottom:12px}.schedule-head strong{text-align:center;font-family:Georgia,serif;font-size:19px;font-weight:500;text-transform:capitalize;color:#5D4A63}.schedule-nav{width:38px;height:38px;border:1px solid rgba(93,74,99,.14);border-radius:11px;background:#fff;color:#5D4A63;cursor:pointer;font-size:18px}.schedule-nav:hover:not(:disabled){background:#5D4A63;color:#fff}.schedule-nav:disabled{opacity:.32;cursor:not-allowed}.schedule-weekdays,.schedule-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.schedule-weekdays{margin:8px 0 6px}.schedule-weekdays span{text-align:center;font-size:9px;font-weight:800;letter-spacing:.03em;color:#9A8982;text-transform:uppercase}.schedule-blank{aspect-ratio:1}.schedule-day{aspect-ratio:1;border:0;border-radius:12px;background:transparent;color:#4E414C;font-size:12px;font-weight:700;cursor:pointer;transition:.15s}.schedule-day:hover:not(:disabled){background:#E8DDE4;color:#5D4A63}.schedule-day.is-today{box-shadow:inset 0 0 0 1px #8A6F7C}.schedule-day.is-selected{background:#5D4A63!important;color:#fff!important;box-shadow:0 7px 16px rgba(93,74,99,.2)}.schedule-day:disabled{color:#CFC3BD;cursor:not-allowed}.schedule-time-row{display:flex;align-items:end;gap:10px;border-top:1px solid rgba(93,74,99,.1);margin-top:14px;padding-top:14px}.schedule-time-wrap{flex:1}.schedule-time-wrap>span{display:block;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#8A6F7C;margin-bottom:6px}.schedule-time-wrap select{width:100%;height:42px;border:1px solid #D8CAC2;border-radius:10px;background:#fff;color:#352B39;padding:0 10px;outline:0}.schedule-confirm{height:42px;border:0;border-radius:10px;padding:0 16px;background:#5D4A63;color:#fff;font-weight:800;cursor:pointer}.schedule-confirm:hover{background:#8A6F7C}.schedule-helper{font-size:9px;line-height:1.45;color:#8E7F78;margin:12px 2px 0}.schedule-error .schedule-popover{border-color:#A65353}.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.form-status{min-height:20px;margin-top:13px;font-size:11px;line-height:1.45}.form-status.is-working{color:#8A6F7C}.form-status.is-success{color:#9FCB95}.contact-form-light .form-status.is-success{color:#477846}.form-status.is-error{color:#E5A0A0}.contact-form-light .form-status.is-error{color:#A65353}.submit:disabled{opacity:.65;cursor:wait}.contact-form input[type="datetime-local"]{display:none!important}
@media(max-width:650px){.schedule-popover{position:fixed;left:15px;right:15px;top:50%;width:auto;transform:translateY(-50%);max-height:86vh;overflow:auto;border-radius:18px;padding:16px}.schedule-day{min-height:38px}.schedule-time-row{align-items:stretch;flex-direction:column}.schedule-confirm{width:100%}}
