:root{--ink:#11110f;--paper:#eee9df;--muted:#aaa69e;--line:#302f2b;--gold:#c7a66b;--max:1480px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}.shell{width:min(var(--max),calc(100% - 8vw));margin:auto}.nav{height:96px;display:flex;align-items:center;gap:42px;border-bottom:1px solid var(--line)}.brand{display:inline-flex;flex-direction:column;line-height:.9;letter-spacing:.16em;min-width:170px}.brand b{font-family:'Playfair Display',serif;font-size:24px}.brand span{font-size:10px;letter-spacing:.45em;margin:8px 0 0 4px}.navlinks{display:flex;gap:34px;margin-left:auto}.navlinks a,.eyebrow{font-size:12px;letter-spacing:.17em;text-transform:uppercase}.navcta{margin-left:12px}.button{display:inline-flex;align-items:center;justify-content:center;padding:16px 24px;font-size:12px;letter-spacing:.09em;font-weight:600}.button.light{background:var(--paper);color:var(--ink)}.button.dark{background:var(--ink);color:var(--paper)}.hero{min-height:790px;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:6vw;padding-top:45px;padding-bottom:60px}.hero-copy{position:relative;z-index:2}.hero h1{font-size:clamp(62px,6.1vw,116px);line-height:.91;letter-spacing:-.055em;margin:25px 0 32px;max-width:900px;font-weight:500}.hero h1 em,.cta h2 em{font-family:'Playfair Display',serif;font-weight:600;color:var(--paper)}.lead{font-size:18px;line-height:1.65;color:#c7c3bb;max-width:660px}.actions{display:flex;align-items:center;gap:30px;margin:34px 0}.textlink{font-size:12px;letter-spacing:.1em}.contact{display:flex;gap:28px;flex-wrap:wrap;color:#bdb8ae;font-size:13px}.hero-art{position:relative;min-width:0}.hero-art .halo{position:absolute;inset:6% 7%;border-radius:50%;background:radial-gradient(circle,#cfc5b3 0,#8f887c 43%,transparent 70%);filter:blur(3px);opacity:.6}.hero-art img{position:relative;width:100%;display:block;border-radius:2px;box-shadow:0 30px 80px #0008}.ticker{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0}.ticker-track{display:flex;gap:54px;width:max-content;animation:marquee 35s linear infinite}.ticker span{font-family:'Playfair Display',serif;font-style:italic;font-size:25px;white-space:nowrap}.ticker span+span:before{content:'—';margin-right:54px;color:var(--gold)}@keyframes marquee{to{transform:translateX(-35%)}}.section{padding:130px 0}.intro-grid,.split{display:grid;grid-template-columns:1fr 3fr;gap:7vw}.section h2{font-family:'Playfair Display',serif;font-size:clamp(44px,4.5vw,82px);line-height:1.03;margin:0 0 48px;letter-spacing:-.035em}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.service-grid article{background:var(--ink);padding:38px}.service-grid b,.steps span{color:var(--gold);font-size:12px}.service-grid h3,.steps h3{font-family:'Playfair Display',serif;font-size:30px;margin:35px 0 15px}.service-grid p,.steps p,.project-info p,.pricing p,.faq p,.footer-grid p{color:#aaa69e;line-height:1.7}.section-head{text-align:center;margin-bottom:70px}.section-head h2{margin-bottom:0}.project{display:grid;grid-template-columns:.38fr .62fr;gap:6vw;align-items:center;padding:90px 0;border-top:1px solid #d2cbbd;background:var(--paper);color:var(--ink);margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-left:max(4vw,calc((100vw - var(--max))/2));padding-right:max(4vw,calc((100vw - var(--max))/2))}.project.reverse{background:#151513;color:var(--paper);border-color:var(--line)}.project-info h3{font-family:'Playfair Display',serif;font-size:clamp(58px,6vw,100px);line-height:.9;margin:18px 0 30px;letter-spacing:-.04em}.project-info p{max-width:480px;font-size:17px}.project-info>a{display:inline-block;margin-top:20px;font-size:12px;letter-spacing:.12em;border-bottom:1px solid currentColor;padding-bottom:5px}.project-shot{border:12px solid currentColor;box-shadow:0 30px 65px #0003}.project-shot img{width:100%;display:block}.dark-section{background:#191917;border-block:1px solid var(--line);padding:130px 0}.dark-section h2{font-family:'Playfair Display',serif;font-size:clamp(44px,4.5vw,82px);margin:15px 0 60px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}.steps article{background:#191917;padding:38px}.split .lead{max-width:850px}.pricing{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;border-top:1px solid var(--line)}.pricing>div{max-width:760px}.pricing h2{margin:18px 0}.pricing p{font-size:18px}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;border-top:1px solid var(--line)}.accordions details{border-top:1px solid var(--line);padding:24px 0}.accordions details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-family:'Playfair Display',serif;font-size:25px}.cta{background:var(--paper);color:var(--ink);padding:120px 0;text-align:center}.cta h2{font-family:'Playfair Display',serif;font-size:clamp(50px,6vw,100px);line-height:1;max-width:1100px;margin:20px auto 45px}.cta h2 em{color:var(--ink)}footer{padding:85px 0 30px}.footer-grid{display:grid;grid-template-columns:1.5fr .65fr .9fr 1.3fr;gap:6vw}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:13px;font-size:13px}.footer-grid>div>b{font-size:11px;letter-spacing:.15em;margin-bottom:10px}.footer-brand p{font-family:'DM Sans';letter-spacing:0;max-width:300px;margin-top:24px}.footer-contact .button{margin-top:12px;width:max-content}.copyright{border-top:1px solid var(--line);margin-top:65px;padding-top:25px;color:#77746e;font-size:11px;text-align:center}@media(max-width:1050px){.navlinks{display:none}.navcta{margin-left:auto}.hero{grid-template-columns:1fr;min-height:0;padding-top:90px}.hero-art{max-width:900px;margin:auto}.intro-grid,.split,.faq{grid-template-columns:1fr}.service-grid,.steps{grid-template-columns:1fr 1fr}.project,.project.reverse{grid-template-columns:1fr}.project-shot{order:-1}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.shell{width:min(var(--max),calc(100% - 38px))}.nav{height:78px}.navcta{padding:12px 14px;font-size:10px}.hero{padding-top:65px}.hero h1{font-size:55px}.hero-art img{border-radius:0}.contact{flex-direction:column;gap:10px}.section,.dark-section{padding:85px 0}.service-grid,.steps,.footer-grid{grid-template-columns:1fr}.project,.project.reverse{padding-top:60px;padding-bottom:60px}.project-shot{border-width:6px}.project-info h3{font-size:56px}.pricing{align-items:flex-start;flex-direction:column}.ticker span{font-size:20px}}
