@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#1b211f;--paper:#f0ece4;--stone:#aa947d;--muted:#68706b;--line:#d5d0c6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #9b7353;outline-offset:3px}.wrap{width:min(1400px,calc(100% - 96px));margin:auto}.header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 max(48px,calc((100vw - 1400px)/2));border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:14px}.brand img{width:83px;height:48px;object-fit:contain}.brand span{font-weight:700;font-size:10px;letter-spacing:.18em;line-height:1.5}.header nav{display:flex;align-items:center;gap:40px;font-size:13px;font-weight:700}.nav-cta,.button.dark{background:var(--ink);color:#fff}.nav-cta{padding:20px 24px}.nav-cta span{margin-left:18px}.mobile-cta{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:620px}.hero-copy{padding:92px 55px 84px 0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.eyebrow{font-size:11px;letter-spacing:.2em;font-weight:700;color:#867464;text-transform:uppercase}.hero .eyebrow{display:flex;gap:38px;color:#777b74}.hero h1,h2{font-family:Manrope,sans-serif;letter-spacing:-.065em;line-height:1.02;margin:25px 0;font-weight:800}.hero h1{font-size:clamp(60px,6.7vw,100px);text-transform:uppercase}.hero h1 em{font-style:normal;color:#a18b74}.intro{font-size:17px;line-height:1.75;color:#636b65;max-width:500px}.actions{display:flex;gap:14px;margin-top:35px}.button{min-height:54px;padding:17px 24px;display:inline-flex;gap:22px;align-items:center;justify-content:space-between;font-size:13px;font-weight:700;border:1px solid var(--ink);cursor:pointer}.button:hover,.nav-cta:hover{opacity:.8}.outline{background:transparent}.hero-art{background:#191e1c;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;color:#b5a697}.hero-art svg{width:100%;max-height:570px}.art-top,.art-bottom{position:absolute;left:32px;right:32px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.16em;z-index:1}.art-top{top:30px}.art-bottom{bottom:30px}.ribbon{border-block:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);padding:0 max(48px,calc((100vw - 1400px)/2))}.ribbon span{padding:22px 0;font-size:11px;letter-spacing:.14em;font-weight:700}.ribbon span+span{padding-left:30px;border-left:1px solid var(--line)}.ribbon b{color:var(--stone);margin-right:12px}.ribbon i{font-size:12px;letter-spacing:0;font-weight:400;font-style:normal;color:#8b8c84;margin-left:8px}.section{padding-top:120px;padding-bottom:120px;scroll-margin-top:25px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:40px}.section-heading>p,.process-grid>div:first-child>p:not(.eyebrow),.contact>div>p:not(.eyebrow),.about p:not(.eyebrow){max-width:380px;color:var(--muted);line-height:1.75;font-size:15px}h2{font-size:clamp(40px,4.5vw,66px)}h3{font-family:Manrope,sans-serif;letter-spacing:-.035em;font-size:20px}.services{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.services article{padding:25px 28px 30px;min-height:340px;display:flex;flex-direction:column;background:rgba(255,255,255,.25)}.services article+article{border-left:1px solid var(--line)}.service-top,.form-head span{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.15em;color:#8b8d84}.icon{font-family:serif;font-size:77px;color:#a8937c;line-height:1.3;margin:15px auto}.services h3{margin:12px 0}.services p,.steps p{font-size:14px;line-height:1.65;color:var(--muted)}.services a{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.09em;margin-top:auto;padding-top:22px}.process{background:#e5dfd5}.process-grid,.about-grid,.contact{display:grid;grid-template-columns:1fr 1fr;gap:12%}.process-grid .button{margin-top:25px}.steps>div{display:flex;gap:30px;border-top:1px solid #cfc8bd;padding:20px 0}.steps>div:last-child{border-bottom:1px solid #cfc8bd}.steps span{font-size:11px;font-weight:700;color:#a18870;padding-top:5px}.steps h3{margin:0;font-size:17px}.steps p{margin:8px 0 0}.about{background:#1b211f;color:#f2eee7;scroll-margin-top:0}.about-grid{gap:0}.about-grid>div:first-child{padding:90px 12% 90px 0}.about p:not(.eyebrow){color:#b7bcb6}.about-mark{border-left:1px solid #343b36;display:flex;justify-content:center;align-items:center;position:relative;background:repeating-linear-gradient(170deg,transparent 0 37px,#ffffff0b 38px 39px,transparent 40px 52px)}.about-mark img{width:min(60%,370px);filter:brightness(0) saturate(100%) invert(69%) sepia(12%) saturate(659%) hue-rotate(351deg) brightness(93%)}.about-mark span{position:absolute;bottom:25px;right:0;font-size:10px;letter-spacing:.18em;color:#a99a89}.contact{align-items:start}.contact .small{font-size:13px!important;margin-top:42px}.contact form{background:#fffdf9;padding:32px;border:1px solid #d8d1c5}.form-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.form-head h3{font-size:17px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;margin:0 0 20px}input,select,textarea{display:block;width:100%;margin-top:9px;padding:13px;border:1px solid #d6d1c8;background:#faf9f5;color:var(--ink);font-size:14px;letter-spacing:0;text-transform:none;font-weight:400}textarea{resize:vertical}.form-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px}.form-bottom p{font-size:12px;color:var(--muted);max-width:220px}footer{background:#151b19;color:#e8e5dd;padding:60px 0 20px}.footer-grid{display:grid;grid-template-columns:1fr 150px 200px;gap:35px}.footer-brand{align-self:start}.footer-brand img{filter:invert(1)}.footer-grid>div{display:flex;flex-direction:column;gap:12px;color:#b3b7ae;font-size:13px}.footer-grid strong{font-size:10px;letter-spacing:.14em;color:#c3aa91;margin-bottom:6px}.footer-end{border-top:1px solid #333a36;margin-top:60px;padding-top:20px;display:flex;justify-content:space-between;color:#868c84;font-size:9px;letter-spacing:.14em}@media(max-width:800px){.wrap{width:calc(100% - 40px)}.header{height:72px;padding:0 20px}.header nav{display:none}.mobile-cta{display:block;font-size:12px;font-weight:700}.brand img{width:67px}.brand span{font-size:9px}.hero{display:flex;flex-direction:column}.hero-copy{padding:64px 0 48px}.hero h1{font-size:clamp(49px,11vw,78px)}.hero .eyebrow{gap:16px;font-size:9px}.intro{font-size:16px}.actions{flex-wrap:wrap}.hero-art{min-height:350px}.art-top,.art-bottom{left:18px;right:18px;font-size:8px}.ribbon{padding:0 20px;grid-template-columns:1fr}.ribbon span{padding:12px 0;font-size:10px}.ribbon span+span{border-left:0;border-top:1px solid var(--line);padding-left:0}.section{padding-top:75px;padding-bottom:75px}.section-heading{display:block}.section-heading>p{margin-top:22px}.services{grid-template-columns:1fr}.services article{min-height:260px}.services article+article{border-left:0;border-top:1px solid var(--line)}.icon{font-size:55px;margin:5px auto}.process-grid,.about-grid,.contact{grid-template-columns:1fr;gap:45px}.about-grid{gap:0}.about-grid>div:first-child{padding:75px 0}.about-mark{border-left:0;border-top:1px solid #343b36;min-height:270px}.about-mark img{width:50%}.about-mark span{right:15px}.contact form{padding:22px}.form-row{grid-template-columns:1fr;gap:0}.form-bottom{align-items:start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1;margin-bottom:25px}.footer-end{gap:20px;line-height:1.6}.footer-end span:last-child{text-align:right}}
/* Wider, fluid composition with open service rows. */
:root { --gutter:clamp(24px,4.5vw,160px); }
.wrap { width:calc(100% - var(--gutter)*2); max-width:none; }
.header { height:104px; padding-inline:var(--gutter); }
.brand img { width:100px; height:54px; }
.brand span { font-size:11px; }
.header nav { font-size:clamp(18px,1.05vw,30px); gap:clamp(28px,2.5vw,80px); }
.header nav > a { display:inline-flex; align-items:center; min-height:52px; white-space:nowrap; }
.header nav .nav-cta { min-height:64px; padding:20px 30px; }
.hero { grid-template-columns: .9fr 1.1fr; min-height:clamp(640px,43vw,1120px); }
.hero-copy { padding:clamp(60px,5vw,160px) clamp(36px,4vw,120px) clamp(60px,5vw,160px) 0; }
.hero h1 { font-size:clamp(64px,6.6vw,210px); margin-block:36px; }
.hero .eyebrow { gap:24px; flex-wrap:wrap; font-size:clamp(10px,.65vw,18px); }
.intro { font-size:clamp(17px,1.15vw,30px); max-width:34em; line-height:1.6; }
.actions { margin-top:clamp(24px,3vw,70px); gap:18px; }
.button { font-size:clamp(13px,.8vw,21px); padding:20px 28px; min-height:60px; }
.hero-art { isolation:isolate; }
.hero-image { display:block; position:absolute; width:100%; height:100%; object-fit:cover; object-position:55% center; }
.hero-art::after { content:""; position:absolute; inset:0; background:linear-gradient(#101815aa,transparent 22%,transparent 78%,#101815c9); pointer-events:none; }
.art-top,.art-bottom { left:clamp(24px,2.5vw,70px); right:clamp(24px,2.5vw,70px); font-size:clamp(9px,.6vw,16px); color:#e2d6c5; line-height:1.5; gap:20px; }
.art-top { top:32px; }.art-bottom { bottom:32px; }
.ribbon { padding-inline:var(--gutter); }
.ribbon span { padding-block:26px; font-size:clamp(10px,.7vw,18px); }
.ribbon i { font-size:clamp(12px,.8vw,20px); }
.section { padding-block:clamp(80px,6.5vw,180px); }
h2 { font-size:clamp(44px,4.5vw,130px); }
.section-heading { margin-bottom:clamp(36px,4vw,100px); }
.section-heading>p,.process-grid>div:first-child>p:not(.eyebrow),.contact>div>p:not(.eyebrow),.about p:not(.eyebrow) { max-width:34em; font-size:clamp(16px,1.05vw,27px); }
.eyebrow { font-size:clamp(11px,.7vw,18px); }
.services { display:block; border:0; }
.services article { display:grid; grid-template-columns:48px 1fr 1.4fr .65fr; align-items:center; gap:clamp(24px,3vw,85px); padding:clamp(30px,3vw,80px) 0; min-height:0; background:transparent; border-top:1px solid #bbb4a7; }
.services article+article { border-left:0; }
.services article:last-child { border-bottom:1px solid #bbb4a7; }
.service-number { align-self:start; padding-top:10px; color:#917b65; font-size:clamp(12px,.9vw,22px); }
.services h3 { font-size:clamp(27px,2.5vw,66px); line-height:1.12; margin:0; }
.service-description p { font-size:clamp(16px,1.05vw,27px); margin:0 0 20px; max-width:38em; }
.service-description>span { font-size:clamp(9px,.58vw,15px); letter-spacing:.12em; color:#8a7968; line-height:1.8; display:block; }
.services a { display:flex; align-items:center; justify-content:space-between; gap:18px; font-size:clamp(11px,.75vw,20px); margin:0; padding:16px 0; border-bottom:1px solid #bbb4a7; }
.services a span { font-size:26px; transition:transform .2s; }.services a:hover span { transform:translate(3px,-3px); }
.process-grid,.contact { gap:10%; }
.steps>div { padding:clamp(24px,2vw,56px) 0; }
.steps h3 { font-size:clamp(21px,1.5vw,38px); }.steps p { font-size:clamp(16px,1vw,26px); }.steps span { font-size:clamp(12px,.8vw,21px); }
.about-grid>div:first-child { padding-block:clamp(80px,6vw,170px); }
.about-mark img { width:60%; max-width:650px; }.about-mark span { font-size:clamp(10px,.7vw,18px); }
.contact form { padding:clamp(28px,2.5vw,65px); }
.form-head h3 { font-size:clamp(20px,1.4vw,34px); }
label { font-size:clamp(11px,.72vw,18px); }
input,select,textarea { padding:clamp(14px,1vw,28px); font-size:clamp(16px,1vw,25px); }
.form-bottom p,.contact .small { font-size:clamp(13px,.85vw,22px)!important; max-width:28em; }
.footer-grid { grid-template-columns:1fr .45fr .6fr; }.footer-grid>div { font-size:clamp(14px,1vw,24px); }.footer-grid strong,.footer-end { font-size:clamp(10px,.65vw,17px); }
@media(min-width:1800px) { .header { height:clamp(104px,5.5vw,168px); }.nav-cta { padding:26px 34px; }.brand img { width:clamp(100px,5.5vw,170px); height:auto; }.brand span { font-size:clamp(11px,.6vw,17px); } }
@media(max-width:1100px) { .header nav { gap:20px; font-size:13px; }.hero { min-height:610px; }.hero-copy { padding-right:30px; }.hero h1 { font-size:clamp(58px,6.8vw,75px); }.hero .eyebrow { font-size:9px; gap:10px; }.actions { flex-wrap:wrap; }.services article { grid-template-columns:28px 1fr 1.4fr; gap:24px; }.services a { grid-column:3; justify-self:start; width:100%; max-width:220px; }.service-number { grid-row:1/3; }.services h3 { grid-row:1/3; }.ribbon i { display:block; margin:6px 0 0 23px; } }
@media(max-width:800px) { :root { --gutter:22px; }.header { height:80px; }.brand img { width:75px; height:43px; }.brand span { font-size:9px; }.hero { display:grid; grid-template-columns:1fr; min-height:0; }.hero-copy { padding:54px 0 44px; }.hero h1 { font-size:clamp(54px,11.5vw,90px); margin-block:26px; }.hero .eyebrow { font-size:9px; gap:20px; }.intro { font-size:17px; }.hero-art { aspect-ratio:1.12; min-height:0; margin-inline:calc(var(--gutter)*-1); }.hero-image { object-position:center; }.art-top,.art-bottom { font-size:8px; left:22px; right:22px; }.art-top { top:20px; }.art-bottom { bottom:20px; }.actions { margin-top:24px; gap:12px; }.button { padding:17px 20px; min-height:54px; font-size:12px; }.ribbon { grid-template-columns:1fr; padding-block:7px; }.ribbon span { padding:12px 0; }.ribbon i { display:inline; margin-left:10px; }.section { padding-block:68px; }h2 { font-size:clamp(39px,8vw,60px); }.section-heading { margin-bottom:30px; }.services article { grid-template-columns:24px 1fr; gap:18px; padding-block:30px; }.service-number { grid-row:1; padding-top:5px; }.services h3 { grid-row:auto; font-size:29px; }.services h3 br { display:none; }.service-description { grid-column:2; }.service-description p { font-size:16px; margin-bottom:15px; }.service-description>span { font-size:9px; }.services a { grid-column:2; max-width:220px; padding-block:12px; font-size:11px; }.process-grid,.contact { grid-template-columns:1fr; gap:35px; }.about-grid>div:first-child { padding-block:65px; }.about-mark { min-height:250px; }.about-mark img { width:52%; }.about-mark span { font-size:9px; }.contact form { padding:22px; }.footer-grid { grid-template-columns:1fr 1fr; }.footer-brand { grid-column:1/-1; }.footer-grid>div { font-size:13px; }.footer-grid strong,.footer-end { font-size:9px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none!important; } }

.hero-image{object-position:center}.hero-art .bracket-wireframe{position:absolute;inset:0;width:100%;height:100%;max-height:none;pointer-events:none;z-index:1}

#bracket-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:1;pointer-events:none}
@media(min-width:1800px){.header nav .nav-cta{padding:26px 38px;min-height:78px}}
@media(max-width:1100px) and (min-width:801px){.header nav{font-size:16px;gap:18px}.header nav .nav-cta{padding:18px 22px;min-height:58px}}
@media(max-width:800px){.mobile-cta{font-size:15px;min-height:44px;display:inline-flex;align-items:center}}

.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-bottom .form-status{max-width:380px;margin:0;line-height:1.5}.form-status.success{color:#2c6548}.form-status.error{color:#a13125}.button:disabled{opacity:.65;cursor:wait}
