:root{--yellow:#ffd000;--black:#0d0d0d;--soft:#171717;--white:#f7f7f2;--grey:#b9b9b3;--line:#30302d}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--black);color:var(--white);font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.6}
a{color:inherit;text-decoration:none}
.site-header{height:88px;display:flex;align-items:center;gap:34px;padding:0 clamp(22px,5vw,76px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;background:rgba(13,13,13,.94);backdrop-filter:blur(14px)}
.brand{height:64px;display:flex;align-items:center}
.brand img{display:block;width:auto;height:72px;object-fit:contain}
.site-header nav{display:flex;gap:30px;margin-left:auto}
.site-header nav a{font-size:.9rem;font-weight:600}
.site-header nav a:hover{color:var(--yellow)}
.header-cta{background:var(--yellow);color:#111;padding:12px 18px;font-weight:800;font-size:.88rem}
.menu-button{display:none}
.hero{min-height:calc(100vh - 88px);display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);overflow:hidden}
.hero-copy{padding:clamp(70px,9vw,135px) clamp(25px,7vw,108px);display:flex;flex-direction:column;justify-content:center}
.eyebrow{text-transform:uppercase;color:var(--yellow);font-size:.76rem;font-weight:800;letter-spacing:.18em;margin:0 0 18px}
.hero h1,.section-heading h2,.heritage h2,.work-preview h2,.contact h2{font-family:'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;line-height:.88;letter-spacing:-.025em;margin:0}
.hero h1{font-size:clamp(4rem,8.7vw,9rem)}
.hero h1 span{color:var(--yellow)}
.hero-text{color:#d0d0ca;font-size:clamp(1rem,1.25vw,1.15rem);max-width:660px;margin:32px 0}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;font-weight:800;font-size:.9rem}
.button.primary{background:var(--yellow);color:#111}
.button.secondary{border:1px solid #5a5a55}
.button:hover{transform:translateY(-2px)}
.hero-proof{margin-top:48px;border-left:3px solid var(--yellow);padding-left:16px;display:grid}
.hero-proof span{font-size:.85rem;color:var(--grey)}
.hero-visual{position:relative;background:var(--yellow);min-height:640px;overflow:hidden}
.visual-number{font-family:'Barlow Condensed';font-weight:800;font-size:clamp(15rem,31vw,34rem);line-height:1;color:rgba(10,10,10,.09);position:absolute;right:-3%;bottom:-10%}
.print-card{position:absolute;background:#111;color:#fff;border:1px solid #333;box-shadow:0 24px 60px rgba(0,0,0,.25);font-family:'Barlow Condensed';font-weight:800;font-size:clamp(2rem,4vw,4.5rem);letter-spacing:.04em;display:flex;align-items:center;padding:25px}
.card-one{width:72%;height:25%;top:18%;left:8%;transform:rotate(-6deg)}
.card-two{width:68%;height:23%;top:43%;right:-3%;transform:rotate(5deg);background:#f3f3ed;color:#111}
.card-three{width:76%;height:24%;bottom:9%;left:5%;transform:rotate(-2deg)}
.services{padding:clamp(80px,10vw,150px) clamp(22px,5vw,76px)}
.section-heading{display:grid;grid-template-columns:1.25fr .75fr;column-gap:7vw;align-items:end;margin-bottom:55px}
.section-heading .eyebrow{grid-column:1/-1}
.section-heading h2,.heritage h2,.work-preview h2{font-size:clamp(3rem,6vw,6.4rem)}
.section-heading>p:last-child{color:var(--grey);max-width:470px}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.service{min-height:290px;padding:30px;position:relative;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:.25s ease}
.service:hover{background:#161614}
.service.featured{background:var(--yellow);color:#111}
.service-index{font-size:.75rem;font-weight:700;color:#8d8d87}
.featured .service-index{color:#111}
.service-tag{position:absolute;right:18px;top:24px;text-transform:uppercase;font-size:.65rem;font-weight:800;letter-spacing:.09em}
.service h3{font-family:'Barlow Condensed';font-size:2rem;line-height:1;text-transform:uppercase;margin:65px 0 16px}
.service p{color:var(--grey);font-size:.92rem;margin:0}
.featured p{color:#28281f}
.heritage{display:grid;grid-template-columns:.8fr 1.2fr;min-height:650px;background:#f0f0ea;color:#111}
.heritage-mark{background:#050505;display:flex;align-items:center;justify-content:center;padding:clamp(35px,6vw,90px);overflow:hidden}
.heritage-mark img{width:min(92%,620px);height:auto;filter:drop-shadow(0 18px 32px rgba(0,0,0,.18))}
.heritage-copy{padding:clamp(65px,9vw,135px);display:flex;flex-direction:column;justify-content:center}
.heritage-copy .eyebrow{color:#7b6500}
.heritage-copy p:last-child{font-size:1.08rem;max-width:720px}
.work-preview{padding:clamp(80px,10vw,150px) clamp(22px,5vw,76px);text-align:center}
.coming-soon{display:inline-block;margin:38px auto 0;padding:15px 24px;border:1px solid var(--line);color:var(--grey)}
.project-grid{max-width:1180px;margin:55px auto 0;text-align:left;display:grid;gap:34px}
.project-card{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);background:#161614;border:1px solid var(--line);overflow:hidden}
.project-image{margin:0;min-height:560px;background:#222;overflow:hidden}
.project-image img{display:block;width:100%;height:100%;object-fit:cover}
.project-video{display:flex;align-items:center;justify-content:center;background:#090909}
.project-video video{display:block;width:100%;height:100%;max-height:720px;object-fit:contain;background:#090909}
.project-poster{background:#111}
.project-poster img{object-fit:contain}
.project-copy{padding:clamp(32px,5vw,70px);display:flex;flex-direction:column;justify-content:flex-end}
.project-copy>span{text-transform:uppercase;color:var(--yellow);font-size:.72rem;font-weight:800;letter-spacing:.16em}
.project-copy h3{font-family:'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;font-size:clamp(2.6rem,5vw,5rem);line-height:.95;margin:18px 0 24px}
.project-copy p{color:var(--grey);font-size:1rem;margin:0}
.contact{background:var(--yellow);color:#111;padding:clamp(70px,9vw,130px) clamp(22px,8vw,125px)}
.contact .eyebrow{color:#5d4e00}
.contact h2{font-size:clamp(4rem,9vw,9.5rem)}
.contact>p:not(.eyebrow){font-size:1.1rem;max-width:650px}
.contact-info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:900px;margin-top:40px}
.contact-detail{border-top:2px solid #111;padding-top:16px}
.contact-detail>span{display:block;text-transform:uppercase;font-size:.72rem;font-weight:800;letter-spacing:.14em;margin-bottom:10px}
.contact-detail a{font-weight:800;font-size:1.05rem;line-height:1.45;border-bottom:2px solid transparent}
.contact-detail a:hover{border-color:#111}
.contact-detail p{margin:0 0 10px;line-height:1.45}
.contact-actions{margin-top:32px;display:flex;align-items:center;flex-wrap:wrap;gap:28px}
.button.dark{background:#111;color:#fff}
.mail-link{font-weight:800;border-bottom:2px solid #111}
footer{display:flex;align-items:center;gap:30px;padding:38px clamp(22px,5vw,76px);color:#999;font-size:.78rem}
footer img{width:auto;height:78px;object-fit:contain}
footer p:last-child{margin-left:auto}
.floating-whatsapp{position:fixed;right:22px;bottom:22px;width:56px;height:56px;border-radius:50%;background:var(--yellow);color:#111;display:grid;place-items:center;font-weight:900;box-shadow:0 10px 32px rgba(0,0,0,.35);z-index:30}
.floating-whatsapp svg{width:31px;height:31px;display:block}
@media(max-width:1050px){.service-grid{grid-template-columns:repeat(2,1fr)}
.hero{grid-template-columns:1fr}
.hero-visual{min-height:540px}
.heritage{grid-template-columns:1fr}
.heritage-mark{min-height:430px}
.header-cta{display:none}
}
@media(max-width:720px){.site-header{height:74px;padding:0 18px}
.brand{height:54px}
.brand img{width:auto;height:58px}
.menu-button{display:block;margin-left:auto;background:transparent;border:1px solid #555;color:#fff;padding:8px 12px;font-weight:700}
.site-header nav{display:none;position:absolute;top:74px;left:0;right:0;background:#111;padding:24px;flex-direction:column;border-bottom:1px solid #333}
.site-header nav.open{display:flex}
.hero{min-height:auto}
.hero-copy{padding:65px 22px}
.hero h1{font-size:4.1rem}
.hero-visual{min-height:430px}
.section-heading{display:block}
.section-heading>p:last-child{margin-top:25px}
.service-grid{grid-template-columns:1fr}
.service{min-height:240px}
.heritage-mark{min-height:300px}
.heritage-copy{padding:70px 24px}
.project-card{grid-template-columns:1fr}
.project-image{min-height:420px}
.contact h2{font-size:4rem}
.contact-actions{align-items:flex-start;flex-direction:column}
.contact-info{grid-template-columns:1fr;gap:22px}
.mail-link{font-size:.9rem}
footer{align-items:flex-start;flex-direction:column;gap:12px}
footer p{margin:0}
footer p:last-child{margin-left:0}
}
