:root{--red:#c91a4c;--ink:#141414;--paper:#fff;--soft:#f4f2f1;--line:#ddd8d5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.wrap{width:min(1180px,calc(100% - 48px));margin:auto}.topbar{height:82px;padding:0 max(24px,calc((100vw - 1180px)/2));display:flex;align-items:center;gap:38px;background:#fff;position:relative;z-index:20}.brand{display:flex;align-items:center;gap:11px;font-weight:500;letter-spacing:.16em;white-space:nowrap}.brand b{font-weight:800}.brand-mark{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:var(--red);color:#fff;font-family:Georgia,serif;font-size:22px;font-weight:bold}.topbar nav{display:flex;gap:28px;margin-left:auto;font-size:.9rem;font-weight:600}.topbar nav a:hover{color:var(--red)}.header-phone{font-size:.9rem;font-weight:800;border-left:1px solid var(--line);padding-left:28px}.menu-toggle{display:none}.hero{height:min(760px,calc(100vh - 82px));min-height:620px;position:relative;overflow:hidden;background:#222;color:#fff}.hero>img{width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,10,10,.82) 0%,rgba(15,12,12,.55) 38%,rgba(15,12,12,.08) 70%)}.hero-content{position:absolute;left:max(24px,calc((100vw - 1180px)/2));top:50%;transform:translateY(-52%);width:min(690px,calc(100% - 48px))}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;font-weight:800;color:var(--red);margin:0 0 20px}.hero h1,.intro h2,.process h2,.showcase h2,.contact h2{font-family:"Playfair Display",Georgia,serif;font-size:clamp(2.8rem,5.4vw,5.2rem);line-height:1.03;letter-spacing:-.035em;margin:0}.hero h1 em,.intro h2 span,.process h2 span,.showcase h2 span,.contact h2 span{font-weight:600;font-style:italic;color:var(--red)}.lead{font-size:1.08rem;max-width:560px;color:#e7e3e1;margin:28px 0 34px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;min-height:54px;padding:0 25px;align-items:center;justify-content:center;font-size:.86rem;font-weight:800}.btn.primary{background:var(--red);color:#fff}.btn.primary:hover{background:#ac123e}.btn.ghost{border:1px solid rgba(255,255,255,.55);color:#fff}.btn.ghost:hover{background:#fff;color:#111}.hero-note{position:absolute;right:max(24px,calc((100vw - 1180px)/2));bottom:35px;display:flex;gap:15px;align-items:center}.hero-note span{font-family:Georgia,serif;font-size:2.5rem;color:var(--red)}.hero-note p{margin:0;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em}.intro{padding:120px 0 90px;display:grid;grid-template-columns:1.3fr .7fr;gap:90px;align-items:end}.intro h2,.showcase h2,.contact h2{font-size:clamp(2.5rem,4.4vw,4.3rem)}.intro>p{margin:0 0 10px;color:#615d5b;font-size:1.05rem}.services{display:grid;grid-template-columns:repeat(4,1fr);padding-bottom:120px}.service{min-height:370px;border:1px solid var(--line);border-right:0;padding:28px 25px;display:flex;flex-direction:column;transition:.25s}.service:last-child{border-right:1px solid var(--line)}.service:hover,.service.featured{background:var(--red);color:#fff;border-color:var(--red);transform:translateY(-8px)}.service .num{font-size:.72rem;opacity:.55}.service-icon{font-family:Georgia,serif;font-size:3.5rem;margin:40px 0 30px;line-height:1}.service h3{font-family:"Playfair Display",Georgia,serif;font-size:1.55rem;margin:0 0 14px}.service p{font-size:.9rem;opacity:.75;margin:0 0 25px}.service a{font-size:.78rem;font-weight:800;margin-top:auto;text-transform:uppercase;letter-spacing:.08em}.service a span{float:right;font-size:1.2rem}.process{background:#171515;color:#fff;padding:115px 0}.process-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px}.light{color:#e1587d}.process h2{font-size:clamp(2.6rem,4.5vw,4.5rem)}.process-copy{max-width:400px;color:#aaa3a1;margin-top:30px}.process ol{list-style:none;margin:0;padding:0;border-top:1px solid #403a39}.process li{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding:27px 0;border-bottom:1px solid #403a39;position:relative}.process li:before{counter-increment:item;content:"0" counter(item);color:var(--red);font-size:.72rem;position:absolute;left:-48px}.process ol{counter-reset:item}.process li b{font-family:"Playfair Display",Georgia,serif;font-size:1.35rem}.process li span{color:#aaa3a1;font-size:.9rem}.showcase{padding:120px 0;display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}.showcase-copy>p:not(.section-kicker){color:#66605e;margin:30px 0}.showcase ul{list-style:none;padding:0;margin:28px 0 0}.showcase li{padding:12px 0 12px 25px;border-bottom:1px solid var(--line);position:relative}.showcase li:before{content:"";width:8px;height:8px;background:var(--red);position:absolute;left:0;top:21px}.showcase-image{height:580px;position:relative;overflow:hidden}.showcase-image img{width:100%;height:100%;object-fit:cover;object-position:65% center;transform:scale(1.25)}.quote{position:absolute;left:0;bottom:0;background:var(--red);color:#fff;padding:28px 38px;font-family:"Playfair Display",Georgia,serif;font-size:1.45rem;font-style:italic}.contact{background:var(--red);color:#fff;padding:100px 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.contact h2 span{color:#191616}.contact-options a{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;border-bottom:1px solid rgba(255,255,255,.4);padding:20px 0}.contact-options small{font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;opacity:.75}.contact-options strong{font-family:"Playfair Display",Georgia,serif;font-size:1.45rem}.contact-options span{grid-row:1/3;grid-column:2;align-self:center;font-size:1.5rem}.contact-options a:hover{padding-left:10px}footer{background:#0d0c0c;color:#fff;padding:42px 0}.footer-grid{display:grid;grid-template-columns:auto 1fr auto;gap:50px;align-items:center}.footer-grid p{color:#858080;font-size:.8rem;margin:0}.footer-grid>a{font-size:.8rem;font-weight:700}
@media(max-width:900px){.topbar{height:72px;padding:0 20px}.topbar nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;padding:25px;flex-direction:column;gap:18px}.topbar nav.open{display:flex}.header-phone{display:none}.menu-toggle{display:block;margin-left:auto;background:none;border:1px solid #bbb;padding:7px 12px;font:inherit;font-size:.8rem}.hero{height:720px;min-height:0}.hero-content{top:47%}.hero-note{display:none}.intro,.process-grid,.showcase,.contact-grid{grid-template-columns:1fr;gap:45px}.intro{padding:80px 0 60px}.services{grid-template-columns:1fr 1fr;padding-bottom:80px}.service:nth-child(2){border-right:1px solid var(--line)}.process{padding:80px 0}.process ol{margin-left:40px}.showcase{padding:80px 0}.showcase-image{height:440px}.contact{padding:75px 0}.footer-grid{grid-template-columns:1fr;gap:20px}}
@media(max-width:560px){.wrap{width:min(100% - 32px,1180px)}.brand{font-size:.76rem}.hero{height:690px}.hero-content{left:16px;width:calc(100% - 32px)}.hero h1{font-size:2.65rem}.lead{font-size:.98rem}.hero-actions{display:grid}.services{grid-template-columns:1fr}.service{border-right:1px solid var(--line);min-height:300px}.service:hover,.service.featured{transform:none}.service-icon{margin:25px 0 20px}.process li{grid-template-columns:1fr;gap:8px}.showcase-image{height:360px}.quote{padding:20px;font-size:1.1rem}.contact h2{font-size:2.55rem}.contact-options strong{font-size:1.2rem}}
.contact-options strong{overflow-wrap:anywhere}.footer-grid p a{color:#d4cecb}.footer-grid p a:hover{color:#fff}
