:root{--bg: #0a0a0b;--bg-soft: #111114;--bg-card: #0e0e10;--text: #ededee;--muted: #8d8d93;--faint: #5c5c62;--line: #26262b;--line-soft: #1b1b1f;--white: #ffffff;--serif: "Playfair Display", Georgia, "Times New Roman", serif;--sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--wrap: 1180px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--sans);font-weight:300;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px}.eyebrow{font-size:12px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--muted)}h1,h2,h3{font-family:var(--serif);font-weight:500;color:var(--white);letter-spacing:-.01em}.btn{display:inline-block;padding:15px 34px;border:1px solid var(--white);color:var(--white);font-family:var(--sans);font-size:13px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;background:transparent;transition:background .25s ease,color .25s ease}.btn:hover{background:var(--white);color:var(--bg)}.btn-ghost{border-color:var(--line);color:var(--text)}.btn-ghost:hover{border-color:var(--white);background:transparent;color:var(--white)}.site-header{position:sticky;top:0;z-index:50;background:#0a0a0bb8;backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;height:78px}.brand{display:flex;align-items:center;gap:14px}.logo-mark{width:42px;height:42px;border:1.5px solid var(--white);display:grid;place-items:center;flex:none}.logo-mark span{font-family:var(--serif);font-weight:600;font-size:20px;letter-spacing:-.06em;color:var(--white);line-height:1;padding-left:1px}.brand-logo{width:42px;height:42px;display:block;flex:none}.brand-name{font-family:var(--serif);font-size:19px;font-weight:500;letter-spacing:.02em;color:var(--white)}.nav-links{display:flex;gap:36px;align-items:center}.nav-links a{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);transition:color .2s ease}.nav-links a:hover,.nav-links a.active{color:var(--white)}.nav-toggle{display:none;background:none;border:0;color:var(--white);cursor:pointer;padding:8px}.nav-toggle svg{width:26px;height:26px}.hero{border-bottom:1px solid var(--line);padding:96px 0}.hero--tall{min-height:calc(100vh - 78px);display:flex;align-items:center}.hero .eyebrow{margin-bottom:26px;display:block}.hero h1{font-size:clamp(42px,7.5vw,88px);line-height:1.05;margin-bottom:26px}.hero .lede{font-size:clamp(17px,2.1vw,21px);color:var(--text);max-width:640px;margin-bottom:8px}.hero .meta{font-size:15px;color:var(--muted);margin-top:22px}.hero .meta strong{color:var(--text);font-weight:500}.hero .actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:42px}.section{padding:110px 0;border-bottom:1px solid var(--line)}.section:last-of-type{border-bottom:none}.section-head{max-width:720px;margin-bottom:60px}.section-head .eyebrow{display:block;margin-bottom:20px}.section-head h2{font-size:clamp(30px,4.5vw,46px);line-height:1.12}.section-head p{color:var(--muted);font-size:17px;margin-top:20px}.prose p{font-size:17px;color:var(--text);margin-bottom:22px;max-width:68ch}.prose p:last-child{margin-bottom:0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:60px}.grid{display:grid;gap:1px;background:var(--line);border:1px solid var(--line)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.cell{background:var(--bg);padding:40px 38px;transition:background .25s ease}.cell:hover{background:var(--bg-soft)}.cell .num{font-family:var(--serif);font-size:14px;color:var(--muted);display:block;margin-bottom:18px}.cell h3{font-size:23px;margin-bottom:12px}.cell p{font-size:15px;color:var(--muted);line-height:1.65}.gallery{columns:3;column-gap:14px}.gallery figure{break-inside:avoid;margin:0 0 14px;position:relative;overflow:hidden;background:var(--bg-soft);border:1px solid var(--line-soft)}.gallery img{width:100%;transition:transform .6s ease,opacity .3s ease}.gallery figure:hover img{transform:scale(1.04)}.gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:16px 16px 13px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:linear-gradient(to top,#000000b8,#0000);opacity:0;transition:opacity .3s ease}.gallery figure:hover figcaption{opacity:1}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.feature-grid figure{position:relative;overflow:hidden;aspect-ratio:4/3;background:var(--bg-soft);border:1px solid var(--line-soft)}.feature-grid img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.feature-grid figure:hover img{transform:scale(1.05)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.contact-item{margin-bottom:34px}.contact-item:last-child{margin-bottom:0}.contact-item .label{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}.contact-item a,.contact-item .value{font-family:var(--serif);font-size:clamp(20px,3vw,27px);color:var(--white);transition:opacity .2s ease}.contact-item a:hover{opacity:.7}.contact-item .addr{font-family:var(--sans);font-size:16px;font-weight:300;color:var(--text);line-height:1.75}.map-wrap{border:1px solid var(--line);line-height:0}.map-wrap iframe{width:100%;height:420px;border:0;display:block;filter:grayscale(.25)}.enquiry .field{margin-bottom:20px}.enquiry label{display:block;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:9px}.enquiry input,.enquiry select,.enquiry textarea{width:100%;background:transparent;border:1px solid var(--line);color:var(--text);font-family:var(--sans);font-size:15px;font-weight:300;padding:13px 14px;transition:border-color .2s ease}.enquiry input:focus,.enquiry select:focus,.enquiry textarea:focus{outline:none;border-color:var(--white)}.enquiry textarea{resize:vertical}.enquiry select{cursor:pointer}.enquiry option{color:#111}.enquiry button{margin-top:10px}.enquiry .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.site-footer{padding:56px 0 44px;border-top:1px solid var(--line);background:var(--bg-soft)}.foot-top{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;margin-bottom:44px}.foot-brand{max-width:320px}.foot-brand .brand{margin-bottom:18px}.foot-brand p{color:var(--muted);font-size:14px;line-height:1.7}.foot-cols{display:flex;gap:64px;flex-wrap:wrap}.foot-col h4{font-family:var(--sans);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--faint);font-weight:500;margin-bottom:16px}.foot-col a,.foot-col span{display:block;font-size:14px;color:var(--muted);margin-bottom:10px;transition:color .2s ease}.foot-col a:hover{color:var(--white)}.foot-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding-top:28px;border-top:1px solid var(--line);font-size:13px;color:var(--faint);letter-spacing:.04em}.social{display:flex;gap:18px;align-items:center}.social a{color:var(--muted);display:inline-flex;transition:color .2s ease}.social a:hover{color:var(--white)}.social svg{width:19px;height:19px;fill:currentColor;display:block}@media(max-width:880px){.gallery{columns:2}.feature-grid{grid-template-columns:repeat(2,1fr)}.foot-top{flex-direction:column;gap:32px}}@media(max-width:760px){.wrap{padding:0 22px}.nav-links{display:none}.nav-links.open{display:flex;position:absolute;top:78px;left:0;right:0;flex-direction:column;gap:0;background:var(--bg);border-bottom:1px solid var(--line);padding:8px 22px 20px}.nav-links.open a{padding:14px 0;border-bottom:1px solid var(--line-soft)}.nav-toggle{display:inline-flex}.section{padding:76px 0}.section-head{margin-bottom:40px}.two-col,.contact-grid{grid-template-columns:1fr;gap:28px}.grid-2,.grid-3{grid-template-columns:1fr}}@media(max-width:480px){.gallery{columns:1}.feature-grid{grid-template-columns:1fr}}@keyframes fadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes rise{0%{transform:translateY(112%)}to{transform:translateY(0)}}@keyframes growX{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes gridIn{0%{opacity:0}to{opacity:1}}@keyframes fade{0%{opacity:0}to{opacity:1}}.reveal{transition:opacity .8s ease,transform .8s cubic-bezier(.22,1,.36,1)}.js-reveal .reveal{opacity:0;transform:translateY(28px)}.reveal.in{opacity:1;transform:none}.hero2{position:relative;min-height:calc(100vh - 78px);display:flex;align-items:center;border-bottom:1px solid var(--line);overflow:hidden}.hero2 .grid-bg{position:absolute;inset:0;pointer-events:none;opacity:0;animation:gridIn 1.4s ease .1s forwards;background-image:linear-gradient(rgba(120,140,170,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(120,140,170,.05) 1px,transparent 1px);background-size:58px 58px}.hero2-inner{position:relative;width:100%;padding:60px 0}.hero2 .eyebrow{display:inline-flex;align-items:center;gap:14px;margin-bottom:28px;opacity:0;animation:fadeUp .8s ease .35s forwards}.hero2 .eyebrow .tick{width:26px;height:1px;background:#9fb6c9;transform:scaleX(0);transform-origin:left;animation:growX .7s ease .5s forwards}.hero2-h1{font-family:var(--serif);font-weight:500;color:var(--white);font-size:clamp(46px,8.5vw,104px);line-height:.98;letter-spacing:-.015em}.hero2-h1 .line{overflow:hidden;display:block}.hero2-h1 .line>span{display:block;transform:translateY(112%);animation:rise 1s cubic-bezier(.22,1,.36,1) forwards}.hero2-h1 .l1>span{animation-delay:.55s}.hero2-h1 .l2>span{animation-delay:.7s}.hero2-h1 em{font-style:italic;font-weight:400;color:var(--muted)}.hero2 .rule{height:1px;background:var(--line);margin:34px 0 30px;max-width:560px;transform:scaleX(0);transform-origin:left;animation:growX 1s ease 1.05s forwards}.hero2 .lede{font-size:clamp(17px,2.1vw,21px);max-width:580px;color:#cdcdd2;opacity:0;animation:fadeUp .8s ease 1.15s forwards}.hero2 .actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:40px;opacity:0;animation:fadeUp .8s ease 1.3s forwards}.hero2-foot{display:flex;justify-content:space-between;max-width:560px;margin-top:46px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);opacity:0;animation:fade .9s ease 1.6s forwards}.trust{border-bottom:1px solid var(--line)}.trust-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.trust .stat{background:var(--bg-soft);padding:36px 28px;text-align:center}.trust .stat b{display:block;font-family:var(--serif);font-weight:500;color:var(--white);font-size:clamp(28px,4vw,44px);line-height:1}.trust .stat span{display:block;margin-top:10px;font-size:13px;letter-spacing:.05em;color:var(--muted)}.sb-pair{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:center}.sb-card{position:relative;border:1px solid var(--line);overflow:hidden;aspect-ratio:4/3;background:var(--bg-soft)}.sb-card img{width:100%;height:100%;object-fit:cover}.sb-tag{position:absolute;top:14px;left:14px;z-index:2;font-size:11px;letter-spacing:.16em;text-transform:uppercase;background:#0000009e;color:#fff;padding:5px 12px;border-radius:20px}.sb-arrow{font-family:var(--serif);font-size:30px;color:var(--muted)}.sb-note{margin-top:18px;font-size:13px;color:var(--faint)}.steps{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.steps li{background:var(--bg);padding:30px 24px}.steps li span{font-family:var(--serif);font-size:14px;color:var(--muted);display:block;margin-bottom:16px}.steps li h3{font-size:19px;margin-bottom:10px}.steps li p{font-size:14px;color:var(--muted);line-height:1.6}.testi .quote{font-family:var(--serif);font-size:19px;line-height:1.55;color:var(--text)}.testi .who{margin-top:18px;font-size:13px;letter-spacing:.05em;color:var(--muted)}.studio .two-col{align-items:center;gap:48px}.studio-photo{aspect-ratio:4/5;border:1px solid var(--line);background:var(--bg-soft);display:grid;place-items:center;color:var(--faint);font-size:12px;letter-spacing:.12em;text-transform:uppercase}.dawn-light{height:12vh;background:linear-gradient(to bottom,#cbb89d,#faf6f0)}.exp{padding:116px 0 52px;border-bottom:none;background:linear-gradient(to bottom,#0f0a07,#20170d 28%,#6e5c45 48%,#cbb89d 66% 100%)}.exp .exp-head{max-width:760px;margin:0 auto 124px;text-align:center}.exp .exp-head .eyebrow{display:block;margin-bottom:20px;color:#cdb79a}.exp .exp-head h2{color:#f3ebde;font-size:clamp(28px,4vw,44px);line-height:1.14}.exp .trust-inner{background:#b49a7a;border:1px solid #b49a7a}.exp .stat{background:#cbb89d}.exp .stat b{color:#2a1d10}.exp .stat span{color:#5c4a35}.studio-light{background:#faf6f0;border-bottom:1px solid #ece5da;padding-top:84px}.studio-light .eyebrow{color:#8a8278}.studio-light h2{color:#14110e}.studio-light .prose p{color:#3a352f}.studio-light .prose p strong{color:#14110e}.cta-brown{background:#120c08;border-top:1px solid #2a1d10}.cta-brown p{color:#b8a890}.page-light{background:#faf6f0;color:#2a231b}.page-light .hero{background:#0f0a07;border-bottom:none;padding:134px 0 64px;background-image:linear-gradient(rgba(205,175,130,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(205,175,130,.05) 1px,transparent 1px);background-size:60px 60px}.page-light .hero .eyebrow{color:#d49a4a}.page-light .hero h1{color:#fff}.page-light .hero .lede{color:#cdbfa8}.page-light .section{border-bottom:1px solid #ece0d0;padding:88px 0}.page-light .section:last-of-type{border-bottom:none}.page-light .eyebrow{color:#a8742a}.page-light h1,.page-light h2,.page-light h3{color:#1a120b}.page-light .section-head p{color:#6a5f50}.page-light .prose p{color:#3a3228}.page-light .prose p strong{color:#1a120b}.page-light .lede{color:#6a5f50}.page-light .grid{background:#e6dccb;border-color:#e6dccb}.page-light .cell{background:#fbf8f3}.page-light .cell:hover{background:#fff}.page-light .cell .num{color:#a8742a}.page-light .cell p{color:#6a5f50}.page-light .btn{border-color:#1a120b;color:#1a120b}.page-light .btn:hover{background:#1a120b;color:#faf6f0}.page-light .enquiry label{color:#6a5f50}.page-light .enquiry input,.page-light .enquiry select,.page-light .enquiry textarea{background:#fffdfa;border-color:#ddd0bd;color:#2a231b}.page-light .enquiry input:focus,.page-light .enquiry select:focus,.page-light .enquiry textarea:focus{border-color:#1a120b}.page-light .enquiry option{color:#1a120b}.page-light .contact-item .label{color:#a8742a}.page-light .contact-item a,.page-light .contact-item .value{color:#1a120b}.page-light .contact-item .addr{color:#3a3228}.page-light .map-wrap{border-color:#e0d5c4}.page-light .map-wrap iframe{filter:grayscale(.15)}.cta{padding:120px 0;text-align:center;border-top:1px solid var(--line)}.cta h2{font-family:var(--serif);font-weight:500;font-size:clamp(30px,4.5vw,48px);color:var(--white);margin-bottom:18px}.cta p{color:var(--muted);font-size:18px;max-width:560px;margin:0 auto 34px}@media(max-width:880px){.trust-inner,.steps{grid-template-columns:repeat(2,1fr)}.sb-pair{grid-template-columns:1fr;gap:16px}.sb-arrow{transform:rotate(90deg)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal,.hero2 .eyebrow,.hero2 .lede,.hero2 .actions,.hero2-foot{opacity:1!important;transform:none!important}.hero2-h1 .line>span{transform:none!important}.hero2 .rule,.hero2 .eyebrow .tick{transform:scaleX(1)!important}.hero2 .grid-bg{opacity:1!important}}.foot-credit[data-astro-cid-sz7xmlte]{text-align:center;margin-top:26px;padding-top:20px;border-top:1px solid var(--line);font-size:12px;letter-spacing:.08em;color:var(--faint)}.foot-credit[data-astro-cid-sz7xmlte] .cr-heart[data-astro-cid-sz7xmlte]{color:#d49a4a;font-size:13px;vertical-align:-1px;margin:0 1px}
