
:root{--ink:#18221f;--paper:#f8f9f7;--gold:#c3a478;--muted:#65706a;--line:#d8ddd8;--pad:clamp(24px,5.7vw,100px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid #a98a58;outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:'Manrope','DM Sans',sans-serif;font-weight:500;line-height:1.12;letter-spacing:-.045em}h2{font-size:clamp(34px,4.25vw,66px)}h3{font-size:clamp(25px,2.35vw,36px)}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.16em;line-height:1.7;margin-bottom:25px}.section{padding:100px var(--pad)}header{height:106px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:0 var(--pad);background:var(--paper);position:relative;z-index:10}.wordmark{display:inline-block;font-family:'Manrope',sans-serif;font-size:38px;font-weight:800;line-height:1;letter-spacing:-.075em}.q{display:inline-block;color:#8d754f}.brand-sub{display:block;font-size:8px;font-weight:600;letter-spacing:.21em;margin-top:10px;line-height:1.2}.brand{flex-shrink:0}nav{display:flex;gap:32px;font-size:14px;font-weight:500}nav a{border-bottom:1px solid transparent}nav a:hover{border-color:var(--ink)}.header-tools{display:flex;align-items:center;gap:22px}select{background:transparent;border:0;color:var(--ink);font-size:14px;padding:8px 2px;max-width:115px;cursor:pointer}.header-cta{font-size:14px;border-bottom:1px solid var(--ink);padding:5px 0}.hero{height:min(810px,calc(100svh - 106px));min-height:610px;position:relative;color:#fff;overflow:hidden;background:#24332b}.hero-image,.hero-shade{position:absolute;width:100%;height:100%;inset:0;object-fit:cover}.hero-image{object-position:center 55%}.hero-shade{background:linear-gradient(90deg,rgba(9,19,16,.69),rgba(9,19,16,.12) 85%),linear-gradient(0deg,rgba(9,19,16,.6),transparent 28%)}.hero-content{position:relative;padding:clamp(65px,8vw,130px) var(--pad) 90px;max-width:880px}.hero h1{font-size:clamp(65px,7.8vw,120px);line-height:.98;font-weight:400;letter-spacing:-.06em;margin:30px 0}.hero h1 em{font-weight:400;font-family:Georgia,serif;letter-spacing:-.06em}.hero-text{font-size:17px;line-height:1.75;max-width:445px;color:#eee}.button{display:inline-flex;align-items:center;justify-content:center;padding:15px 24px;font-size:14px;font-weight:600;min-height:52px;transition:background .2s,color .2s}.button.light{background:var(--paper);color:var(--ink);margin-top:32px}.button.light:hover{background:var(--gold)}.button.dark{background:var(--ink);color:#fff;margin-top:32px}.button.dark:hover{background:#3b4d43}.hero-foot{position:absolute;bottom:28px;inset-inline:var(--pad);display:flex;justify-content:space-between;gap:25px;font-size:12px;letter-spacing:.04em}.hero-foot>div{text-align:end}.hero-foot small{display:block;font-size:12px;opacity:.75}.intro{display:grid;grid-template-columns:1.05fr 1fr;gap:10%;padding-block:110px;border-bottom:1px solid var(--line)}.intro-text{font-size:21px;line-height:1.8;align-self:end;max-width:560px;color:#4e5a53}.section-heading{margin-bottom:50px}.expertise{padding-top:100px}.service-tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:42px;gap:40px}.service-tabs button{background:transparent;border:0;border-bottom:2px solid transparent;color:var(--muted);padding:18px 0 23px;text-align:start;font-size:17px;flex:1;display:flex;gap:18px;align-items:baseline;line-height:1.5;margin-bottom:-1px}.service-tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--ink)}.num{font-size:12px;color:#897b64}.service-panel{display:grid;grid-template-columns:1.2fr 1fr;gap:7%;align-items:center}.service-panel[hidden]{display:none}.service-panel img{display:block;width:100%;height:410px;object-fit:cover}.service-panel figcaption{font-size:12px;color:var(--muted);padding-top:10px}.service-copy{padding-block:20px}.service-copy>p{margin-top:24px;color:var(--muted);line-height:1.8}.service-copy ul{padding:0;list-style:none;margin:28px 0}.service-copy li{padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}.text-link{display:inline-block;font-size:14px;border-bottom:1px solid currentColor;padding-bottom:4px;width:fit-content}.text-link:hover{color:#8d754f}.approach{background:var(--ink);color:#f8f9f7;display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-block:100px}.approach .eyebrow{color:var(--gold)}.approach .muted{color:#b9c2bb;max-width:350px;margin-top:28px}.steps article{display:flex;gap:30px;padding:24px 0;border-bottom:1px solid #47534b}.steps article:first-child{padding-top:0}.steps article:last-child{border:0}.step-num{font-size:12px;color:var(--gold);padding-top:7px}.steps h3{font-size:26px;letter-spacing:-.02em}.steps p{margin-top:12px;color:#b9c2bb;font-size:15px}.work-intro{color:var(--muted);margin-top:25px;max-width:420px}.projects{border-top:1px solid var(--line)}.project{display:grid;grid-template-columns:50px 1.4fr 1fr auto;align-items:center;gap:25px;padding:35px 0;border-bottom:1px solid var(--line)}.project-num{font-size:12px;color:#8d754f}.project h3{font-size:29px}.project p{margin-top:7px;font-size:14px;color:var(--muted)}.project-spec{display:grid;font-size:14px;color:var(--muted)}.values{padding-block:90px;background:#e7eae5}.values-heading{display:flex;justify-content:space-between;gap:40px;margin-bottom:65px}.values-heading h2{font-size:42px;width:49%}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px}.values-grid article{border-top:1px solid #bac3b9;padding-top:22px}.value-letter{font-family:'Manrope',sans-serif;font-size:85px;line-height:1.1;font-weight:400;letter-spacing:-.08em;display:block;color:#87927e;margin-bottom:24px}.values h3{font-size:23px;letter-spacing:-.02em}.values article p{font-size:14px;line-height:1.7;color:#5b665e;margin-top:12px;max-width:240px}.contact{display:grid;grid-template-columns:1.35fr 1fr;gap:12%;padding-block:110px}.contact h2{font-size:clamp(50px,5.5vw,85px)}.contact>div>p:not(.eyebrow){max-width:420px;color:var(--muted);margin-top:28px}.contact-details{align-self:center}.contact-details .email{font-size:clamp(24px,3vw,40px);letter-spacing:-.04em;border-bottom:1px solid var(--ink)}.location{margin-top:55px}.contact-details>p:not(.eyebrow){font-size:18px!important;margin-top:0!important}footer{padding:55px var(--pad) 25px;background:var(--ink);color:#fff}.footer-top{display:flex;justify-content:space-between;align-items:center}.footer-line{font-size:14px;color:#b9c2bb;margin-top:30px}.footer-bottom{display:flex;justify-content:space-between;gap:35px;margin-top:45px;border-top:1px solid #435047;padding-top:24px;font-size:12px;color:#aeb9b1}.footer-bottom p:last-child{max-width:510px;text-align:end}.skip{position:fixed;top:-100px;left:15px;z-index:99;padding:10px;background:white;color:black}.skip:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#menu-toggle{display:none}html[dir=rtl] body{font-family:'Noto Sans Arabic',sans-serif}html[dir=rtl] h1,html[dir=rtl] h2,html[dir=rtl] h3{font-family:'Noto Sans Arabic',sans-serif;letter-spacing:0;line-height:1.6}html[dir=rtl] .hero h1{font-size:clamp(52px,6vw,90px);line-height:1.4}html[dir=rtl] .hero h1 em{font-family:inherit;font-style:normal;letter-spacing:0}html[dir=rtl] .hero-content{margin-left:auto}html[dir=rtl] .hero-shade{transform:scaleX(-1)}html[dir=rtl] .eyebrow{letter-spacing:0}html[lang=zh-CN] body,html[lang=zh-CN] h1,html[lang=zh-CN] h2,html[lang=zh-CN] h3{font-family:'Noto Sans SC',sans-serif}html[lang=zh-CN] h1,html[lang=zh-CN] h2,html[lang=zh-CN] h3{letter-spacing:0}html[lang=zh-CN] .hero h1 em{font-family:inherit;font-style:normal;letter-spacing:0}
@media(min-width:1700px){.section,header,footer{padding-inline:max(var(--pad),calc((100vw - 1520px)/2))}}@media(max-width:1000px){header{padding-inline:28px;gap:20px}nav{gap:20px}.header-tools{gap:15px}.section{padding-block:75px}.intro{gap:7%}.intro-text{font-size:18px}.service-panel{gap:5%}.service-panel img{height:365px}.project{grid-template-columns:25px 1.2fr 1fr;gap:20px}.project>a{grid-column:2}.values-grid{gap:24px}.service-tabs{gap:22px}.service-tabs button{font-size:15px;gap:10px}.approach{gap:7%}}
@media(max-width:740px){html{scroll-padding-top:30px}header{height:90px;padding-inline:22px}.wordmark{font-size:30px}.brand-sub{font-size:6.5px;margin-top:8px}.header-tools{gap:14px}.header-cta{display:none}select{font-size:13px;max-width:100px}#menu-toggle{display:block;background:transparent;border:0;border-bottom:1px solid var(--ink);padding:4px 0;font-size:14px}nav{display:none;position:absolute;top:90px;left:0;right:0;background:var(--paper);padding:20px 24px 30px;flex-direction:column;border-bottom:1px solid var(--line)}nav.open{display:flex}.hero{min-height:630px;height:calc(90svh - 90px);max-height:810px}.hero-content{padding-top:80px}.hero h1{font-size:72px}.hero-image{object-position:57% center}.hero-shade{background:linear-gradient(90deg,rgba(9,19,16,.7),rgba(9,19,16,.3)),linear-gradient(0deg,rgba(9,19,16,.7),transparent 30%)}.hero-text{font-size:16px;max-width:350px}.hero-foot>span{display:none}.hero-foot>div{text-align:start}.intro{grid-template-columns:1fr;gap:32px}.intro-text{font-size:18px}.eyebrow{margin-bottom:20px;font-size:11px}.section{padding-block:65px}.service-tabs{gap:12px;margin-bottom:28px}.service-tabs button{font-size:14px;display:block;padding-bottom:15px}.num{display:block;margin-bottom:7px}.service-panel{grid-template-columns:1fr;gap:20px}.service-panel img{height:auto;aspect-ratio:1.35}.service-copy{padding-top:8px}.service-copy>p{margin-top:20px}.approach{grid-template-columns:1fr;gap:40px}.approach .muted{max-width:none}.project{grid-template-columns:25px 1fr;gap:15px}.project-spec{grid-column:2;display:flex;gap:18px;flex-wrap:wrap}.project h3{font-size:27px}.project a{font-size:13px}.values-heading{display:block;margin-bottom:35px}.values-heading h2{width:100%;font-size:35px}.values-grid{grid-template-columns:1fr 1fr;gap:35px 22px}.value-letter{font-size:64px;margin-bottom:18px}.values h3{font-size:21px}.contact{grid-template-columns:1fr;gap:55px}.contact h2{font-size:57px}.location{margin-top:35px}.contact-details .email{font-size:31px}.footer-bottom{display:block}.footer-bottom p:last-child{margin-top:20px;text-align:start}.footer-line{font-size:13px}.footer-top .text-link{font-size:13px}html[dir=rtl] .hero h1{font-size:53px}html[dir=rtl] .hero-content{padding-top:55px}html[lang=es] .hero h1{font-size:60px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Comfortable reading and controls for every visitor. */
.eyebrow,.num,.step-num,.project-num,.hero-foot,.hero-foot small,.service-panel figcaption,.footer-bottom{font-size:14px}.service-copy li,.steps p,.values article p,.project p,.project-spec,.footer-line{font-size:16px}select{min-height:44px}.text-link{padding-block:9px;min-height:44px}.header-cta{min-height:44px;display:inline-flex;align-items:center}.service-tabs button{min-height:64px}.values article p{max-width:270px}.header-tools{gap:20px}@media(max-width:740px){.header-cta{display:none}.eyebrow{font-size:12px}#menu-toggle{min-height:44px;min-width:44px}.service-tabs button{font-size:14px}.footer-line,.project a{font-size:14px}.hero{min-height:660px}.hero h1{font-size:68px}.hero-foot{font-size:12px}.hero-foot small{font-size:12px}html[lang=es] .hero h1{font-size:56px}}
.brand-logo{display:block;width:142px;height:auto}@media(max-width:740px){.brand-logo{width:112px}}
.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px 32px}.project-card:first-child{grid-column:1/-1}.project-image-wrap{overflow:hidden;background:#e7eae5}.project-image-wrap img{display:block;width:100%;height:auto;aspect-ratio:1.5;object-fit:cover;transition:transform .3s}.project-card:first-child .project-image-wrap img{aspect-ratio:2.05}.project-image-wrap a:hover img{transform:scale(1.015)}.project-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:10px}.project-controls small{font-size:12px;color:var(--muted);line-height:1.4}.image-toggle{border:1px solid #aeb8b0;background:transparent;color:var(--ink);padding:9px 13px;min-height:44px;font-size:14px;flex-shrink:0}.image-toggle:hover{background:#e7eae5}.project-card-heading{margin-top:22px}.project-card h3{font-size:29px}.project-card-heading p{font-size:16px;color:var(--muted);margin-top:7px}.project-card .text-link{margin-top:12px}.more-projects{border-top:1px solid var(--line);margin-top:60px;padding-top:30px}.more-projects h3{font-size:24px}.more-project-links{display:flex;gap:30px;flex-wrap:wrap;margin-top:20px}@media(max-width:740px){.project-grid{grid-template-columns:1fr;gap:45px}.project-card:first-child{grid-column:auto}.project-card:first-child .project-image-wrap img{aspect-ratio:1.5}.project-controls{align-items:start;gap:10px}.project-controls small{font-size:12px;max-width:180px}.image-toggle{font-size:13px;max-width:150px}.project-card h3{font-size:27px}.more-project-links{gap:15px}.hero-image{object-position:60% center}}
.credential{padding:19px var(--pad);font-size:14px;border-bottom:1px solid var(--line);color:#57634f}.credential a{text-decoration:underline;text-underline-offset:4px}
/* A warm editorial finish, with restrained motion and accessible controls. */
:root{--paper:#faf8f4;--gold:#b7935f;--line:#dedbd3}header{position:sticky;top:0;background:rgba(250,248,244,.97);transition:box-shadow .35s ease;backdrop-filter:blur(15px)}header.is-scrolled{box-shadow:0 5px 25px #18221f0d}.brand-logo{width:216px}.reading-progress{position:absolute;bottom:0;inset-inline:0;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;pointer-events:none}html[dir=rtl] .reading-progress{transform-origin:right}.hero{isolation:isolate}.hero-image{animation:hero-settle 4.8s cubic-bezier(.2,.55,.3,1) both}.hero-content{animation:hero-copy 1s ease-out both}.hero .eyebrow{color:#ebd8b8}.hero .button{box-shadow:0 8px 28px #0002}.hero-shade{background:linear-gradient(90deg,rgba(16,23,19,.72),rgba(16,23,19,.12) 90%),linear-gradient(0deg,rgba(16,23,19,.6),transparent 30%)}.button{position:relative;overflow:hidden;transition:background .3s,color .3s,box-shadow .3s,transform .3s}.button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #18221f1c}.button::after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,#fff4 50%,transparent 80%);transform:translateX(-150%);transition:transform .65s;pointer-events:none}.button:hover::after{transform:translateX(150%)}.service-panel{animation:panel-in .45s ease both}.service-panel figure{overflow:hidden}.service-panel img{transition:transform .8s cubic-bezier(.2,.6,.3,1)}.service-panel figure:hover img{transform:scale(1.025)}.project-image-wrap{box-shadow:0 12px 35px #18221f0a;transition:box-shadow .4s}.project-image-wrap img{transition:transform .9s cubic-bezier(.2,.6,.3,1),filter .5s}.project-image-wrap a:hover img{transform:scale(1.035);filter:saturate(1.04)}.project-image-wrap:hover{box-shadow:0 18px 45px #18221f1c}.text-link{transition:color .25s,border-color .25s}.values{background:linear-gradient(125deg,#e9e7de,#f1eee6 58%,#e5e5dc)}.value-letter{color:#a6885b}.values-grid article{transition:transform .4s}.values-grid article:hover{transform:translateY(-5px)}.contact{background:radial-gradient(ellipse at 85% 80%,#d7bd8a20,transparent 65%)}.reveal-ready{transition:opacity .75s ease,transform .75s cubic-bezier(.2,.6,.3,1)}.reveal-ready.reveal-pending{opacity:0;transform:translateY(24px)}.reveal-ready:focus-within{opacity:1;transform:none}@keyframes hero-settle{from{transform:scale(1.065);filter:brightness(.85)}to{transform:scale(1);filter:brightness(1)}}@keyframes hero-copy{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes panel-in{from{opacity:.3;transform:translateY(7px)}to{opacity:1;transform:none}}@media(max-width:1000px){.brand-logo{width:185px}nav{gap:18px}.header-tools{gap:14px}}@media(max-width:740px){.brand-logo{width:150px}header{gap:12px}.header-tools{gap:10px}select{max-width:90px}.hero-shade{background:linear-gradient(90deg,#101713b8,#10171340),linear-gradient(0deg,#101713a8,transparent 40%)}}@media(max-width:360px){header{padding-inline:16px;gap:8px}.brand-logo{width:120px}.header-tools{gap:6px}select{max-width:85px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.reveal-ready.reveal-pending{opacity:1;transform:none}.project-image-wrap a:hover img,.service-panel figure:hover img,.button:hover,.values-grid article:hover{transform:none}}
/* More expressive motion stays on image surfaces, not text or controls. */
.hero-image{transform:translate3d(var(--hero-x,0px),var(--hero-y,0px),0);scale:1.045;transition:transform 1.1s cubic-bezier(.2,.7,.3,1);will-change:transform}@keyframes hero-settle{from{scale:1.10;filter:brightness(.78)}to{scale:1.045;filter:brightness(1)}}.project-image-wrap{transform:perspective(1200px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .6s cubic-bezier(.2,.7,.3,1),box-shadow .6s;transform-style:preserve-3d;clip-path:inset(0 0 0 0);isolation:isolate}.project-image-wrap::after{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 10%,#f4d6a130 47%,transparent 80%);opacity:0;transform:translateX(-80%);transition:opacity .6s,transform 1.1s;pointer-events:none}.project-image-wrap:hover::after{opacity:1;transform:translateX(55%)}.project-image-wrap:hover{box-shadow:0 25px 55px #18221f30}.project-image-wrap a{display:block}.project-image-wrap:focus-within{outline:3px solid #a58759;outline-offset:6px;clip-path:none}.project-image-wrap a:focus-visible{outline-offset:-5px}.project-card.reveal-ready .project-image-wrap{transition:clip-path 1.1s cubic-bezier(.16,1,.3,1),transform .6s,box-shadow .6s}.project-card.reveal-pending .project-image-wrap{clip-path:inset(0 100% 0 0)}html[dir=rtl] .project-card.reveal-pending .project-image-wrap{clip-path:inset(0 0 0 100%)}.project-card:focus-within .project-image-wrap{clip-path:none}.service-tabs button{transition:color .3s,border-color .3s,background .3s}.service-tabs button:hover{background:#c3a47810}.service-tabs button[aria-selected=true]{background:linear-gradient(0deg,#c3a47818,transparent 70%)}.hero-content .eyebrow{animation:detail-enter .9s .15s both}.hero-content h1{animation:detail-enter 1.05s .25s both}.hero-text{animation:detail-enter 1.05s .4s both}.hero-content .button{animation:detail-enter 1.05s .55s both}@keyframes detail-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@media(max-width:740px){html{scroll-padding-top:110px}.hero-image{will-change:auto}}@media(hover:none),(pointer:coarse){.project-image-wrap{transform:none}.hero-image{transform:none;will-change:auto}}@media(prefers-reduced-motion:reduce){.hero-image{animation:none!important;transform:none!important;scale:1;will-change:auto}.project-image-wrap{transform:none!important;clip-path:none!important}.project-card.reveal-pending .project-image-wrap{clip-path:none!important}.project-image-wrap::after{display:none}}
.project-map{width:100%;aspect-ratio:1.5;background:#e8e5dc;border:1px solid var(--line);overflow:hidden}.project-map iframe{display:block;width:100%;height:100%;border:0}.kings-map-card .project-card-heading p{font-size:15px;line-height:1.7;letter-spacing:0}.kings-map-card:focus-within{opacity:1;transform:none}
.static-map{display:flex;align-items:center;justify-content:center;background:#f1f1f1}.static-map a{display:block;width:100%}.static-map img{display:block;width:100%;height:auto;object-fit:contain}.static-map a:focus-visible{outline-offset:-4px}
/* Responsive navigation and content-first layout, from small phones to desktop. */
:root{--paper:#f8f6f1;--header-height:106px}body{overflow-wrap:break-word}main,section,article,.section>*,.service-copy,.header-tools,.project-card-heading,.contact-details{min-width:0}header{background:rgba(248,246,241,.97)}h1,h2,h3{text-wrap:balance}img{max-width:100%}.portfolio-name{font-size:16px;padding-block:9px}.mobile-contact,.mobile-quick-nav{display:none}.service-tabs button{min-width:0;overflow-wrap:anywhere}.footer-bottom p{min-width:0}.brand-logo{flex-shrink:0}.more-project-links{align-items:center}.contact .email{overflow-wrap:anywhere}.hero-content,.hero-foot{max-width:100%}.button,select,#menu-toggle{min-height:48px}.button{padding-inline:25px}.project-card-heading p{overflow-wrap:anywhere}
@media(max-width:1100px){
 :root{--header-height:92px}html{scroll-padding-top:112px}header{height:var(--header-height);padding-inline:24px;gap:20px}.brand-logo{width:185px}.header-cta{display:none}.header-tools{gap:20px}#menu-toggle{display:block;min-width:62px;min-height:48px;background:transparent;border:1px solid #c5bda9;border-radius:3px;padding:8px 12px;font-size:15px}select{font-size:15px;max-width:130px;padding:8px}
 #navigation{display:none;position:absolute;top:100%;inset-inline:0;background:var(--paper);padding:14px 24px 22px;flex-direction:column;gap:4px;border-bottom:1px solid var(--line);box-shadow:0 14px 24px #18221f10;max-height:calc(100svh - var(--header-height));overflow:auto}#navigation.open{display:flex}#navigation a{display:flex;align-items:center;min-height:48px;padding:10px 12px;font-size:17px;border:0;border-radius:3px}#navigation a:hover,#navigation a:focus-visible{background:#e9e3d7}.mobile-contact{display:flex!important;color:#6c5534;font-weight:600}
 .hero{height:auto;min-height:640px;max-height:none;display:flex;flex-direction:column}.hero-content{padding:70px var(--pad) 45px;max-width:760px}.hero h1{font-size:clamp(56px,8vw,88px)}.hero-text{max-width:480px}.hero-foot{position:relative;inset:auto;bottom:auto;margin-top:auto;padding:18px var(--pad) 25px;gap:24px}.hero-foot>div{margin-inline-start:auto}.hero h1,.hero-text{overflow-wrap:normal}.hero .button{max-width:100%;white-space:normal;text-align:center}.intro,.service-panel,.approach,.contact{gap:40px}
}
@media(max-width:740px){
 :root{--header-height:84px}body{padding-bottom:calc(70px + env(safe-area-inset-bottom,0px))}header{height:var(--header-height);padding-inline:20px;gap:12px}.brand-logo{width:148px}.header-tools{gap:8px}select{max-width:100px;font-size:14px;padding-inline:2px}#menu-toggle{min-width:52px;padding:8px;font-size:14px}html{scroll-padding-top:104px;scroll-padding-bottom:90px}.section{padding-block:58px}.hero{min-height:620px;height:auto;max-height:none}.hero-content{padding:58px var(--pad) 38px}.hero h1,html[lang=es] .hero h1{font-size:clamp(48px,12vw,68px);line-height:1.05;margin:24px 0}.hero-text{font-size:17px;line-height:1.75;max-width:100%}.hero-foot{padding-top:0;padding-bottom:22px}.hero-foot>div{margin-inline-start:0;text-align:start}.hero-foot small{font-size:12px;line-height:1.65}.hero-foot>span{display:none}.hero-image{object-position:62% center}.hero-shade{background:linear-gradient(90deg,#101713c7,#10171355),linear-gradient(0deg,#101713b5,transparent 45%)}html[dir=rtl] .hero-content{padding-top:48px}html[dir=rtl] .hero h1{font-size:clamp(40px,10.5vw,56px);line-height:1.55}html[lang=zh-CN] .hero h1{font-size:clamp(43px,11vw,62px);line-height:1.25}.intro-text{font-size:18px}.contact h2{font-size:clamp(42px,11vw,60px)}.contact-details .email{font-size:clamp(25px,7.7vw,34px)}.footer-top{gap:20px;flex-wrap:wrap}.footer-top .brand-logo{width:160px}.footer-top .text-link{font-size:14px}.service-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.service-tabs button{min-height:72px;line-height:1.5;font-size:15px}.service-panel img{height:auto}.project-card h3{font-size:clamp(24px,6.5vw,29px)}.values-grid{gap:32px 24px}.values article p{font-size:16px}.kings-map-card .project-card-heading p{font-size:15px}
 .mobile-quick-nav{position:fixed;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;inset-inline:0;bottom:0;top:auto;z-index:30;padding:7px 10px calc(7px + env(safe-area-inset-bottom,0px));background:rgba(248,246,241,.98);border-top:1px solid #d6cbb7;box-shadow:0 -5px 25px #18221f0c;backdrop-filter:blur(14px)}.mobile-quick-nav a{min-height:48px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:15px;line-height:1.4;padding:8px 5px;border:0;white-space:normal}.mobile-quick-nav a+a{border-inline-start:1px solid var(--line)}.mobile-quick-nav a:last-child{color:#725732;font-weight:700}
}
@media(max-width:480px){
 .service-tabs{grid-template-columns:1fr;gap:8px;border-bottom:0}.service-tabs button{display:flex;align-items:center;gap:12px;min-height:54px;padding:12px 14px;border:1px solid var(--line);border-inline-start:3px solid transparent;background:#fff5;font-size:16px}.service-tabs button[aria-selected=true]{border-color:#bca680;border-inline-start-color:#8d754f;background:#ebe5d9}.service-tabs .num{display:inline-block;margin:0}.values-grid{grid-template-columns:1fr}.values-grid article{display:grid;grid-template-columns:54px 1fr;gap:0 20px}.values-grid .value-letter{grid-row:1/3;font-size:54px;margin:0}.values-grid h3{font-size:25px}.values-grid article p{max-width:none;margin-top:8px}.project-grid{gap:40px}.more-projects{margin-top:45px}.contact .button{width:100%}.eyebrow{letter-spacing:.12em}
}
@media(max-width:360px){header{padding-inline:14px;gap:8px}.brand-logo{width:118px}.header-tools{gap:5px}select{max-width:90px;font-size:13px}#menu-toggle{min-width:48px;font-size:13px;padding-inline:6px}.hero-content{padding-top:45px}.hero h1,html[lang=es] .hero h1{font-size:46px}.mobile-quick-nav a{font-size:14px}.footer-top .brand-logo{width:145px}}
@media(prefers-reduced-motion:reduce){.hero-content,.hero-content h1,.hero-content .eyebrow,.hero-text,.hero-content .button{animation:none!important;opacity:1;transform:none}}
@media(max-width:740px){#navigation{max-height:calc(100svh - var(--header-height) - 78px - env(safe-area-inset-bottom,0px));overscroll-behavior:contain}}
/* Readable service choices and calm, optional motion. */
.service-tabs{gap:20px}.service-tabs button{font-family:'Manrope','DM Sans',sans-serif;font-size:clamp(21px,2.05vw,30px);font-weight:650;line-height:1.3;padding:22px 16px;min-height:112px;color:#46544c;align-items:center;border-radius:4px 4px 0 0;overflow-wrap:normal}.service-tabs button[aria-selected=true]{color:#18221f;border-bottom:3px solid #9b7c4f;background:#eee8dd}.service-tabs .num{font-size:12px;font-weight:500;color:#8b714c;letter-spacing:.08em;flex-shrink:0}.project-image-wrap{transform:none;transition:box-shadow .45s}.project-image-wrap::after{display:none}.project-card.reveal-pending .project-image-wrap,html[dir=rtl] .project-card.reveal-pending .project-image-wrap{clip-path:none}.project-image-wrap a:hover img{transform:scale(1.022);filter:none}.project-image-wrap:hover{box-shadow:0 16px 38px #18221f1b}.service-panel figure img{transition:transform .65s ease}.service-panel figure:hover img{transform:scale(1.018)}
@media(max-width:900px){.service-tabs{grid-template-columns:1fr;gap:10px;border-bottom:0}.service-tabs button{display:flex;min-height:76px;font-size:clamp(20px,3.7vw,26px);padding:17px 18px;gap:16px;border:1px solid #d8d2c6;border-inline-start:3px solid transparent;border-radius:4px}.service-tabs button[aria-selected=true]{border:1px solid #bda681;border-inline-start:3px solid #9b7c4f}.service-tabs .num{margin:0}}
@media(prefers-reduced-motion:reduce){.service-panel figure img,.project-image-wrap img,.service-tabs button{transition:none!important}.service-panel figure:hover img,.project-image-wrap a:hover img{transform:none!important}}
@media(prefers-reduced-motion:no-preference){.reveal-ready.reveal-pending{transform:translateY(12px)}.reveal-ready:focus-within{transform:none}}
@media(max-width:900px){.service-tabs{display:grid;grid-template-columns:1fr}}
/* Separate, focused pages and a clear enquiry route. */
.hero h1,.hero h1 em{font-family:'Manrope','DM Sans',sans-serif;font-style:normal;font-weight:500}.hero h1 em{color:inherit}.header-cta{display:inline-flex;align-items:center;justify-content:center;gap:18px;background:#18221f;color:#fff;padding:13px 22px;border:1px solid #18221f;border-radius:3px;font-size:15px;font-weight:700;min-height:48px;box-shadow:0 5px 15px #18221f15;transition:background .2s,color .2s,box-shadow .2s}.header-cta::after{content:'↗';font-size:20px;line-height:1}.header-cta:hover{background:#9b7c4f;border-color:#9b7c4f;box-shadow:0 7px 20px #18221f25}#navigation a[aria-current=page]{border-color:#9b7c4f;color:#725c3b;font-weight:700}.inner-page h1{font-size:clamp(42px,5.5vw,76px);line-height:1.08;letter-spacing:-.045em}.inner-page .expertise,.inner-page .work{padding-top:65px}.inner-page .section-heading{margin-bottom:48px}.page-cta{display:flex;align-items:center;justify-content:space-between;gap:40px;background:#eae4d8}.page-cta .button{min-width:165px;font-weight:700}.route-section{padding-top:35px;padding-bottom:70px}.route-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.route-card{padding:38px;background:#ede9e0;border:1px solid #dfd8ca;position:relative;min-height:245px;transition:background .25s,box-shadow .25s}.route-card:hover{background:#e5ded1;box-shadow:0 12px 28px #18221f12}.route-card h2{font-size:clamp(30px,3vw,45px);margin:24px 0 15px}.route-card p{max-width:410px;color:#536057;padding-inline-end:30px}.route-number{font-size:12px;color:#8c724d;letter-spacing:.12em}.route-arrow{position:absolute;inset-inline-end:30px;top:28px;font-size:30px}.enquiry-section{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:start;gap:clamp(35px,6vw,95px);padding-top:65px;padding-bottom:90px}.enquiry-intro h1{max-width:560px}.enquiry-lead{font-size:18px;line-height:1.7;max-width:480px;margin-top:26px;color:#546159}.enquiry-detail{margin-top:34px}.enquiry-detail .eyebrow{margin-bottom:8px}.enquiry-detail a{font-size:24px;font-weight:500;border-bottom:1px solid #aa9166}.enquiry-next{margin-top:45px;border-top:1px solid #d6d0c3;padding-top:24px;max-width:480px}.enquiry-next h2{font-size:22px;margin-bottom:12px}.enquiry-next p{font-size:14px;color:#59675f}.enquiry-form-card{background:#fffdf8;border:1px solid #e3dccf;border-radius:8px;padding:clamp(24px,3vw,42px);box-shadow:0 14px 45px #18221f08}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px 20px}.form-wide{grid-column:1/-1}.form-field{min-width:0}.form-field label{display:block;font-size:14px;font-weight:650;margin-bottom:8px;line-height:1.5}.form-field label>span[aria-hidden]{color:#725c3b}.optional{font-weight:400;font-size:12px;color:#67746b;margin-inline-start:4px}.form-field input,.form-field select,.form-field textarea{display:block;width:100%;max-width:none;border:1px solid #b9c0b6;border-radius:4px;background:#fff;color:#18221f;font:inherit;font-size:16px;line-height:1.5;min-height:50px;padding:11px 13px;box-sizing:border-box}.form-field select{padding-inline-end:28px}.form-field textarea{resize:vertical;min-height:120px;max-height:380px}.form-field input:focus-visible,.form-field select:focus-visible,.form-field textarea:focus-visible{outline:2px solid #9b7c4f;outline-offset:2px;border-color:#9b7c4f}.form-field small{display:block;font-size:12px;line-height:1.6;color:#66736b;margin-top:7px}.form-small{font-size:12px;line-height:1.6;color:#626e66;margin-bottom:20px}.form-consent{display:flex;align-items:flex-start;gap:12px;font-size:14px;line-height:1.6;margin-top:24px;cursor:pointer}.form-consent input{width:20px;height:20px;min-width:20px;margin:2px 0 0;accent-color:#526659}.form-privacy{font-size:12px;line-height:1.7;color:#626e66;margin-top:16px}.form-privacy a{text-decoration:underline;text-underline-offset:3px}.form-submit{width:100%;margin-top:26px;margin-bottom:12px;min-height:54px;justify-content:center;font-size:16px;font-weight:700;border-radius:4px}.form-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.form-status{font-size:14px;padding:16px;border:1px solid #c7b791;background:#f4ecd9;border-radius:4px;margin-bottom:24px}.form-status[hidden]{display:none}.form-status a{display:inline-block;margin-top:8px;text-decoration:underline;font-weight:600}.form-honey{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap}.thanks-section{min-height:60vh;max-width:1050px;padding-top:90px;padding-bottom:110px}.thanks-section h1{margin-bottom:28px}.thanks-section>p:not(.eyebrow){font-size:20px;max-width:680px;margin-bottom:35px}.inner-page .contact{padding-top:60px}html[dir=rtl] .hero h1{font-family:'Noto Sans Arabic','DM Sans',sans-serif}html[lang=zh-CN] .hero h1{font-family:'Noto Sans SC','DM Sans',sans-serif}
@media(max-width:1100px){.header-cta{display:inline-flex;padding:10px 15px;gap:10px}.header-tools{gap:14px}.enquiry-section{grid-template-columns:1fr 1.15fr;gap:30px}}
@media(max-width:800px){.enquiry-section{grid-template-columns:1fr}.enquiry-intro h1{max-width:620px}.enquiry-lead,.enquiry-next{max-width:620px}.enquiry-detail{display:inline-block;vertical-align:top;margin-inline-end:25px}.enquiry-next{margin-top:30px}.route-grid{grid-template-columns:1fr}.page-cta{align-items:flex-start;flex-direction:column}.inner-page .section-heading{display:block}.inner-page .section-heading p{margin-top:22px}.header-tools{gap:8px}.header-cta{padding:10px 12px;font-size:13px}.header-cta::after{font-size:17px}.enquiry-section{padding-top:40px}.inner-page .work,.inner-page .expertise{padding-top:40px}}
@media(max-width:520px){.form-grid{grid-template-columns:1fr}.form-wide{grid-column:auto}.route-card{padding:28px}.enquiry-form-card{padding:22px}.header-cta::after{display:none}.header-cta{padding:8px 10px;min-height:42px;font-size:12px}.header-tools{gap:6px}.header-tools #language{max-width:88px}.brand-logo{width:140px}.inner-page h1{font-size:39px}.enquiry-detail a{font-size:21px}}
@media(max-width:370px){header{padding-inline:16px;gap:7px}.brand-logo{width:116px}.header-tools #language{max-width:75px;font-size:12px}.header-cta{padding-inline:8px}.header-tools{gap:4px}#menu-toggle{padding-inline:6px}}
@media(prefers-reduced-motion:reduce){.route-card,.header-cta{transition:none}}
@media(max-width:600px){body:not(.gallery-page) header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;height:auto;min-height:0;padding:16px 20px;gap:12px 10px}body:not(.gallery-page) header .brand{grid-column:1;grid-row:1;min-width:0;max-width:100%}body:not(.gallery-page) header .brand-logo{width:170px;max-width:100%;height:auto}body:not(.gallery-page) .header-tools{display:contents}body:not(.gallery-page) #language{grid-column:2;grid-row:1;max-width:94px;padding:8px 2px;font-size:14px}body:not(.gallery-page) #menu-toggle{grid-column:3;grid-row:1;min-width:44px;min-height:44px;padding:8px 6px}body:not(.gallery-page) .header-cta{grid-column:1/-1;grid-row:2;width:100%;font-size:16px;min-height:48px;padding:12px 18px;gap:15px}body:not(.gallery-page) .header-cta::after{display:inline;font-size:20px}body:not(.gallery-page) #navigation{top:100%}}

@media(max-width:600px){html{scroll-padding-top:164px}body:not(.gallery-page){--header-height:144px}body:not(.gallery-page) #navigation{max-height:calc(100dvh - 220px);overflow-y:auto}}

.header-cta::after{content:""!important;display:inline-block;width:9px;height:9px;flex:0 0 9px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(0deg);margin-inline-start:3px}html[dir=rtl] .header-cta::after{transform:rotate(-90deg)}
