
*{box-sizing:border-box;margin:0;padding:0}
:root{
  --ink:#0a0a0a;--paper:#f1eee8;--paper2:#ded8ce;--charcoal:#141414;--line:rgba(255,255,255,.16);
  --bronze:#b98c58;--stone:#8a8278;--soft:#c8c0b6;--red:#8c2f22;
}
html{scroll-behavior:smooth}
body{font-family:Inter,sans-serif;background:var(--paper);color:var(--ink);overflow-x:hidden}
a{text-decoration:none;color:inherit}.grain{position:fixed;inset:0;pointer-events:none;opacity:.12;z-index:1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 240 240' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.82' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.loader{position:fixed;inset:0;background:#0a0a0a;color:var(--paper);z-index:5000;display:flex;align-items:center;justify-content:center;flex-direction:column;transition:.8s}
.loader.hide{opacity:0;visibility:hidden}.loader span{font:800 56px "Playfair Display",serif;letter-spacing:-2px}.loader small{letter-spacing:5px;text-transform:uppercase;font-size:10px;margin-top:10px;color:#b9b1a8}
.site-header{position:fixed;z-index:2000;top:0;left:0;width:100%;height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 38px;color:#fff;mix-blend-mode:difference}
.brand{display:flex;flex-direction:column;line-height:.9}.brand strong{font-family:"Playfair Display",serif;font-size:26px;letter-spacing:-.5px}.brand em{font-style:normal;font-size:11px;letter-spacing:4px;text-transform:uppercase;margin-top:7px}
.nav{display:flex;gap:24px;align-items:center}.nav a{font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:800;opacity:.86}.nav a:hover{opacity:1;color:var(--bronze)}
.menu-toggle{display:none;background:transparent;border:0;width:34px}.menu-toggle span{display:block;height:2px;background:#fff;margin:7px 0}
.home-stage{height:100svh;position:relative;overflow:hidden;background:#000;color:#fff}
.stage-media,.stage-slide,.stage-overlay{position:absolute;inset:0}.stage-slide{opacity:0;background-size:cover;background-position:center;transform:scale(1.08);transition:opacity 1.4s, transform 7s}.stage-slide.active{opacity:1;transform:scale(1)}
.stage-overlay{background:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.18),rgba(0,0,0,.74)),linear-gradient(0deg,rgba(0,0,0,.8),transparent 50%,rgba(0,0,0,.4))}
.stage-count{position:absolute;left:38px;bottom:42px;z-index:3;font-size:11px;letter-spacing:3px;text-transform:uppercase;color:#d8d0c6}
.stage-copy{position:absolute;z-index:3;left:10vw;bottom:16vh;width:min(850px,78vw)}
.kicker{font-size:11px;letter-spacing:3.6px;text-transform:uppercase;color:var(--bronze);font-weight:900;margin-bottom:18px}
.stage-copy h1,.page-hero h1,.section-head h2,.split-copy h2,.chapter h2,.contact-card h2,.detail-copy h1{font-family:"Playfair Display",serif;font-weight:700;letter-spacing:-2.8px;line-height:.92}
.stage-copy h1{font-size:clamp(54px,9vw,132px);max-width:1000px}
.stage-copy p{margin:26px 0 34px;color:#dfd8d0;max-width:650px;line-height:1.7}
.magnetic-btn,.atelier-form button{display:inline-flex;border:1px solid rgba(255,255,255,.35);padding:16px 26px;border-radius:999px;color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:2px;font-weight:900;background:rgba(255,255,255,.08);backdrop-filter:blur(8px);transition:.35s}
.magnetic-btn:hover,.atelier-form button:hover{background:#fff;color:#000;transform:translateY(-4px)}
.stage-strip{position:absolute;right:38px;top:50%;z-index:3;display:flex;gap:20px;transform:rotate(90deg) translateX(50%);transform-origin:right center;color:#eee;font-size:10px;letter-spacing:3px;text-transform:uppercase}
.manifesto,.reel,.split-story,.editorial,.timeline,.work-copy,.values,.project-portals,.gallery-filter,.credentials-list,.career-panel,.contact-atelier,.detail-grid-section{position:relative;z-index:5;padding:110px 7vw}
.big-type{font-family:"Playfair Display",serif;font-size:clamp(48px,13vw,180px);line-height:.8;letter-spacing:-7px;color:#1b1b1b;margin-bottom:70px}
.manifesto-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.manifesto article{border-top:1px solid rgba(0,0,0,.25);padding-top:30px}.manifesto span,.chapter span,.value span,.detail-note span{color:var(--red);font-size:11px;letter-spacing:3px;text-transform:uppercase;font-weight:900}.manifesto h2{font:700 46px/1 "Playfair Display",serif;letter-spacing:-1.5px;margin:16px 0}.manifesto p,.split-copy p,.chapter p,.work-copy p,.value p,.detail-note p{line-height:1.8;color:#4c4740}
.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:46px;gap:30px}.section-head h2{font-size:clamp(44px,6vw,86px);max-width:850px}
.reel{background:#0b0b0b;color:#fff}.reel-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(290px,420px);gap:24px;overflow:auto;padding-bottom:18px;scroll-snap-type:x mandatory}.reel-track::-webkit-scrollbar{display:none}
.project-tile{scroll-snap-align:start}.project-tile a{display:block}.project-tile figure{height:500px;overflow:hidden;background:#111;position:relative}.project-tile figure:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.8))}.project-tile img{width:100%;height:100%;object-fit:cover;filter:saturate(.85) contrast(1.08);transition:1s}.project-tile:hover img{transform:scale(1.08);filter:saturate(1) contrast(1.08)}
.project-tile div{margin-top:-94px;position:relative;z-index:2;color:#fff;padding:0 24px 24px}.project-tile span{font-size:10px;letter-spacing:2px;color:var(--bronze);font-weight:900}.project-tile h3{font:700 34px/.95 "Playfair Display",serif;letter-spacing:-.7px;margin-top:8px}
.split-story{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center;background:#121212;color:#fff}.split-image{height:72vh;background-size:cover;background-position:center}.split-copy h2{font-size:clamp(40px,5vw,72px)}.split-copy p{color:#d2ccc4;margin:26px 0}.text-link{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--bronze);font-weight:900}
.page-hero{min-height:72vh;position:relative;display:flex;align-items:end;color:#fff;overflow:hidden}.hero-img,.hero-vignette{position:absolute;inset:0}.hero-img{background-size:cover;background-position:center;filter:saturate(.8) contrast(1.05);transform:scale(1.04)}.hero-vignette{background:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.22)),linear-gradient(0deg,rgba(0,0,0,.82),transparent 55%)}
.vertical-label{position:absolute;right:40px;top:48%;z-index:3;writing-mode:vertical-rl;font-size:10px;letter-spacing:4px;color:#d4cec7}.hero-copy{position:relative;z-index:4;padding:0 7vw 90px;width:min(980px,92vw)}.page-hero h1{font-size:clamp(52px,8vw,120px);margin-bottom:24px}.page-hero .hero-copy>p:last-child{color:#e3ddd5;line-height:1.8;max-width:750px}
.editorial{background:var(--paper)}.chapter{display:grid;grid-template-columns:.32fr 1fr 1fr;gap:44px;padding:44px 0;border-bottom:1px solid rgba(0,0,0,.15)}.chapter h2{font-size:44px}
.timeline{background:#111;color:#fff}.time-line{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.time-line article{border:1px solid rgba(255,255,255,.15);padding:28px;min-height:330px;background:rgba(255,255,255,.04)}.time-line span{color:var(--bronze);font-weight:900;letter-spacing:2px}.time-line h3{font:700 36px/1 "Playfair Display",serif;margin:30px 0 20px}.time-line p{color:#c9c1b9;line-height:1.7;font-size:14px}
.work-copy{background:#fff}.copy-columns{display:grid;grid-template-columns:1fr 1fr;gap:60px;font-size:17px}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;background:#eee8de}.value{padding:36px;border:1px solid rgba(0,0,0,.15);background:#f7f3ec}.value h3{font:700 38px/.95 "Playfair Display",serif;margin:30px 0 14px}
.project-portals{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;background:#0b0b0b}.portal{position:relative;height:76vh;overflow:hidden;color:#fff;padding:30px;display:flex;flex-direction:column;justify-content:flex-end}.portal img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(.15) brightness(.65);transition:1s}.portal:hover img{transform:scale(1.08);filter:grayscale(0) brightness(.75)}.portal span,.portal h2{position:relative;z-index:2}.portal span{font-size:11px;letter-spacing:3px;color:var(--bronze);font-weight:900}.portal h2{font:700 58px/.9 "Playfair Display",serif;letter-spacing:-2px;margin-top:10px}
.gallery-filter{background:#111;color:#fff}.masonry-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.masonry-gallery .project-tile figure{height:340px}.masonry-gallery .project-tile:nth-child(3n+1) figure{height:460px}
.credentials-list{background:#fff}.credentials-list ul{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(0,0,0,.12)}.credentials-list li{background:#fff;padding:30px;font:700 34px/1 "Playfair Display",serif}.credentials-list span{display:block;font:900 11px Inter;color:var(--red);letter-spacing:3px;margin-bottom:20px}
.career-panel{background:#111;color:#fff}.atelier-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:900px}.atelier-form input,.atelier-form textarea,.atelier-form label{background:transparent;border:1px solid rgba(255,255,255,.18);padding:18px 20px;color:#fff;font:500 14px Inter}.atelier-form textarea{grid-column:1/-1;min-height:150px}.atelier-form label{color:#bfb8af}.atelier-form label input{display:block;border:0;padding:10px 0}.atelier-form button{grid-column:1/-1;width:max-content;cursor:pointer}
.contact-atelier{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;background:#111;color:#fff}.contact-card{border:1px solid rgba(255,255,255,.15);padding:42px}.contact-card span{font-size:11px;letter-spacing:3px;color:var(--bronze);font-weight:900}.contact-card h2{font-size:58px;margin:24px 0}.contact-card p{line-height:1.8;color:#d4cec7;margin-bottom:20px}.contact-card a{color:var(--bronze)}
.site-footer{position:relative;z-index:5;background:#080808;color:#9b6d16;padding:38px 7vw;display:flex;align-items:center;justify-content:space-between;gap:30px}.site-footer div{display:flex;flex-direction:column}.site-footer strong{font-family:"Playfair Display",serif;font-size:24px}.site-footer span,.site-footer a{font-size:12px;color:var(--bronze)}.site-footer p{font-size:12px;color:#b8b0a7}
.detail-hero{min-height:100vh;display:grid;grid-template-columns:1.2fr .8fr;background:#0b0b0b;color:#fff}.detail-img{background-size:cover;background-position:center;min-height:100vh}.detail-copy{padding:22vh 7vw 10vh}.detail-copy h1{font-size:clamp(54px,6vw,96px);margin-bottom:26px}.detail-copy p{line-height:1.8;color:#d8d0c6;margin-bottom:34px}.detail-grid-section{display:grid;grid-template-columns:1fr 1fr;gap:20px}.detail-note{padding:36px;border:1px solid rgba(0,0,0,.16);background:#fff}
.reveal{opacity:0;transform:translateY(40px)}.reveal.visible{opacity:1;transform:translateY(0);transition:opacity .9s, transform .9s}
@media(max-width:1050px){.nav{position:fixed;inset:0;background:#0b0b0b;flex-direction:column;justify-content:center;transform:translateX(100%);transition:.4s}.nav.open{transform:translateX(0)}.menu-toggle{display:block}.manifesto-grid,.split-story,.chapter,.copy-columns,.time-line,.project-portals,.contact-atelier,.detail-hero{grid-template-columns:1fr}.masonry-gallery{grid-template-columns:repeat(2,1fr)}.values{grid-template-columns:1fr}.stage-strip{display:none}.detail-img{min-height:60vh}.detail-copy{padding:70px 7vw}}
@media(max-width:700px){.site-header{height:70px;padding:0 20px}.stage-copy{left:6vw;bottom:12vh}.stage-copy h1{font-size:48px}.manifesto,.reel,.split-story,.editorial,.timeline,.work-copy,.values,.project-portals,.gallery-filter,.credentials-list,.career-panel,.contact-atelier,.detail-grid-section{padding:75px 6vw}.big-type{font-size:54px;letter-spacing:-2px}.masonry-gallery,.credentials-list ul,.detail-grid-section,.atelier-form{grid-template-columns:1fr}.project-tile figure,.masonry-gallery .project-tile figure,.masonry-gallery .project-tile:nth-child(3n+1) figure{height:360px}.site-footer{flex-direction:column;align-items:flex-start}.page-hero h1{font-size:48px}.portal{height:55vh}}


/* FIXES V3: FOOTER, MENU CONTRAST, HERO READABILITY, SHARP IMAGES */

/* Header contrast fix */
.site-header{
  mix-blend-mode:normal !important;
  color:#fff;
  background:linear-gradient(180deg,rgba(0,0,0,.72),rgba(0,0,0,.22),rgba(0,0,0,0));
  backdrop-filter:none;
}
.site-header.scrolled{
  background:rgba(9,9,9,.88);
  backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(255,255,255,.10);
}
.nav a{
  color:#fff !important;
  text-shadow:0 2px 12px rgba(0,0,0,.55);
}
.nav a:hover{
  color:var(--bronze) !important;
}

/* Hero text/image conflict fix */
.home-stage::after,
.page-hero::after,
.detail-hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:2;
  background:
    radial-gradient(circle at 18% 52%,rgba(0,0,0,.72),transparent 34%),
    linear-gradient(90deg,rgba(0,0,0,.80),rgba(0,0,0,.22),rgba(0,0,0,.68)),
    linear-gradient(0deg,rgba(0,0,0,.76),rgba(0,0,0,.06),rgba(0,0,0,.46));
}
.stage-copy,
.hero-copy,
.detail-copy{
  z-index:4;
}
.stage-copy{
  background:linear-gradient(90deg,rgba(0,0,0,.36),rgba(0,0,0,0));
  padding:34px 34px 34px 0;
  border-radius:0 32px 32px 0;
}
.hero-copy{
  background:linear-gradient(90deg,rgba(0,0,0,.46),rgba(0,0,0,.06));
  padding:42px 52px 90px 7vw;
  border-radius:0 36px 36px 0;
}
.stage-copy h1,
.page-hero h1,
.detail-copy h1{
  text-shadow:0 22px 70px rgba(0,0,0,.85);
}
.stage-copy p,
.page-hero .hero-copy>p:last-child,
.detail-copy p{
  color:#fff;
  text-shadow:0 8px 24px rgba(0,0,0,.8);
}

/* Crisp images */
.stage-slide,
.hero-img,
.detail-img,
.split-image{
  image-rendering:auto;
  background-size:cover;
  background-position:center;
}
.project-tile figure{
  background:#111;
}
.project-tile img{
  width:100%;
  height:100%;
  object-fit:cover;
  image-rendering:auto;
  filter:none !important;
  transform:translateZ(0);
  backface-visibility:hidden;
}
.project-tile:hover img{
  filter:none !important;
}
.portal img{
  filter:brightness(.82) contrast(1.04) !important;
}
.portal:hover img{
  filter:brightness(.92) contrast(1.04) !important;
}
.masonry-gallery .project-tile figure{
  height:390px;
}
.masonry-gallery .project-tile:nth-child(3n+1) figure{
  height:520px;
}

/* Footer requested design */
.site-footer{
  position:relative;
  z-index:5;
  background:#080808;
  color:#9b6d16;
  padding:30px 7vw;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  font-size:13px;
}
.site-footer div{
  display:block;
}
.footer-tagline{
  color:#f4eee6;
  font-family:"Playfair Display",serif;
  font-size:20px;
}
.site-footer .powered{
  font-size:12px;
   
  color:var(--bronze);
  
}

/* Career email replacement */
.career-email-card{
  max-width:780px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.055);
  padding:44px;
  color:#fff;
}
.career-email-card span{
  color:var(--bronze);
  font-size:11px;
  letter-spacing:3px;
  text-transform:uppercase;
  font-weight:900;
}
.career-email-card h3{
  font-family:"Playfair Display",serif;
  font-size:52px;
  line-height:.98;
  margin:22px 0 18px;
}
.career-email-card p{
  color:#d8d0c6;
  line-height:1.8;
  margin-bottom:28px;
}
.career-email-card a{
  display:inline-flex;
  padding:16px 24px;
  border-radius:999px;
  background:#fff;
  color:#000;
  font-weight:900;
}

/* WhatsApp form */
.whatsapp-lead-form{
  grid-template-columns:1fr;
}
.whatsapp-lead-form button{
  grid-column:1;
}
.floating-whatsapp{
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:2500;
  min-height:48px;
  padding:0 20px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:linear-gradient(135deg,#25D366,#128C7E);
  color:#fff;
  box-shadow:0 24px 60px rgba(37,211,102,.24);
  transition:.3s ease;
}
.floating-whatsapp:hover{
  transform:translateY(-4px);
}
.floating-whatsapp span{
  font-size:11px;
  letter-spacing:2px;
  text-transform:uppercase;
  font-weight:900;
}

/* Mobile menu fix */
@media(max-width:1050px){
  .site-header{
    background:rgba(8,8,8,.82);
    backdrop-filter:blur(14px);
  }
  .nav{
    background:#080808;
  }
  .nav a{
    color:#fff !important;
    font-size:15px;
  }
}
@media(max-width:700px){
  .stage-copy{
    width:88vw;
    padding:24px 20px 24px 0;
  }
  .hero-copy{
    padding:30px 24px 70px 6vw;
  }
  .site-footer{
    flex-direction:column;
    align-items:flex-start;
  }
  .footer-tagline{
    font-size:17px;
  }
  .career-email-card{
    padding:30px 22px;
  }
  .career-email-card h3{
    font-size:38px;
  }
  .floating-whatsapp{
    right:16px;
    bottom:16px;
  }
}


/* HOME PROJECT BROWSER / SEARCHABLE CAROUSEL */
.project-browser{
  position:relative;
  z-index:5;
  padding:110px 7vw;
  background:
    radial-gradient(circle at 15% 10%,rgba(185,140,88,.16),transparent 34%),
    linear-gradient(180deg,#f1eee8,#ded8ce);
  color:#0a0a0a;
  overflow:hidden;
}

.browser-controls{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin:0 0 34px;
}

.filter-pills{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.project-filter{
  border:1px solid rgba(0,0,0,.18);
  background:rgba(255,255,255,.45);
  color:#171717;
  border-radius:999px;
  padding:11px 17px;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:1.8px;
  font-weight:900;
  cursor:pointer;
  transition:.3s ease;
}

.project-filter:hover,
.project-filter.active{
  background:#0b0b0b;
  color:#fff;
  border-color:#0b0b0b;
}

#projectSearch{
  min-width:320px;
  border:1px solid rgba(0,0,0,.18);
  background:rgba(255,255,255,.62);
  color:#0a0a0a;
  border-radius:999px;
  padding:14px 20px;
  font-size:13px;
  outline:none;
}

.project-carousel-wrap{
  position:relative;
}

.project-carousel{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(310px,390px);
  gap:22px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  padding:8px 0 22px;
  scrollbar-width:none;
}

.project-carousel::-webkit-scrollbar{
  display:none;
}

.browser-card{
  scroll-snap-align:start;
  border-radius:0;
  overflow:hidden;
  background:#111;
  min-height:510px;
  display:block;
  transition:.4s ease;
}

.browser-card.is-hidden{
  display:none;
}

.browser-card a{
  display:block;
  height:100%;
  position:relative;
  color:#fff;
}

.browser-card img{
  width:100%;
  height:510px;
  object-fit:cover;
  display:block;
  filter:none;
  transition:1s ease;
  image-rendering:auto;
}

.browser-card a::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.10),rgba(0,0,0,.86));
  pointer-events:none;
}

.browser-card:hover{
  transform:translateY(-8px);
  box-shadow:0 28px 80px rgba(0,0,0,.22);
}

.browser-card:hover img{
  transform:scale(1.06);
}

.browser-card div{
  position:absolute;
  z-index:2;
  left:24px;
  right:24px;
  bottom:24px;
}

.browser-card span{
  font-size:10px;
  letter-spacing:2.4px;
  text-transform:uppercase;
  color:var(--bronze);
  font-weight:900;
}

.browser-card h3{
  font-family:"Playfair Display",serif;
  font-size:34px;
  line-height:.96;
  letter-spacing:-.7px;
  margin:8px 0 8px;
}

.browser-card p{
  color:#e8e1d8;
  font-size:13px;
}

.carousel-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:8;
  width:48px;
  height:48px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.3);
  background:rgba(0,0,0,.72);
  color:#fff;
  font-size:32px;
  cursor:pointer;
  transition:.3s ease;
}

.carousel-arrow:hover{
  background:#fff;
  color:#000;
}

.carousel-arrow.prev{
  left:-24px;
}

.carousel-arrow.next{
  right:-24px;
}

@media(max-width:900px){
  .browser-controls{
    align-items:flex-start;
    flex-direction:column;
  }
  #projectSearch{
    min-width:100%;
    width:100%;
  }
}

@media(max-width:700px){
  .project-browser{
    padding:75px 6vw;
  }
  .project-carousel{
    grid-auto-columns:84vw;
  }
  .browser-card,
  .browser-card img{
    min-height:430px;
    height:430px;
  }
  .carousel-arrow{
    display:none;
  }
}


/* V5 READABILITY + CLEAN HERO FIXES */

/* Loader branding */
.loader span{
  font-family:"Playfair Display",serif !important;
  font-size:clamp(40px,6vw,78px) !important;
  letter-spacing:-2px !important;
  text-transform:none !important;
}

/* More legible overall typography */
body{
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
p, li{
  font-weight:400;
}
.kicker{
  font-size:10px !important;
  letter-spacing:2.4px !important;
}

/* Header should never cover hero text */
.site-header{
  height:78px !important;
  background:rgba(8,8,8,.84) !important;
  backdrop-filter:blur(14px) !important;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.brand strong{
  font-size:23px !important;
}
.brand em{
  font-size:9px !important;
  letter-spacing:3px !important;
}
.nav{
  gap:20px !important;
}
.nav a{
  font-size:9.5px !important;
  letter-spacing:1.7px !important;
}

/* Home hero safer layout */
.home-stage{
  min-height:100svh;
  padding-top:78px;
}
.stage-copy{
  top:50%;
  bottom:auto !important;
  transform:translateY(-43%);
  left:7vw !important;
  width:min(720px,84vw) !important;
  padding:28px 28px 28px 0 !important;
}
.stage-copy h1{
  font-size:clamp(38px,5.8vw,78px) !important;
  line-height:1.02 !important;
  letter-spacing:-1.5px !important;
  max-width:720px !important;
}
.stage-copy p{
  font-size:14px !important;
  line-height:1.75 !important;
  max-width:610px !important;
  margin:20px 0 28px !important;
}

/* Internal hero safer layout */
.page-hero{
  min-height:64vh !important;
  padding-top:78px !important;
  align-items:center !important;
}
.hero-copy{
  padding:120px 7vw 70px !important;
  width:min(850px,92vw) !important;
  border-radius:0 !important;
}
.page-hero h1{
  font-size:clamp(36px,5vw,72px) !important;
  line-height:1.06 !important;
  letter-spacing:-1.4px !important;
  margin-bottom:18px !important;
}
.page-hero .hero-copy>p:last-child{
  font-size:14px !important;
  line-height:1.72 !important;
  max-width:680px !important;
}

/* Detail hero sizing */
.detail-copy{
  padding:140px 7vw 80px !important;
}
.detail-copy h1{
  font-size:clamp(38px,5vw,74px) !important;
  line-height:1.05 !important;
  letter-spacing:-1.4px !important;
}

/* Section headings smaller and clearer */
.section-head h2{
  font-size:clamp(34px,4.8vw,68px) !important;
  line-height:1.04 !important;
  letter-spacing:-1.3px !important;
}
.big-type{
  font-size:clamp(42px,9vw,128px) !important;
  letter-spacing:-3.5px !important;
  line-height:.88 !important;
}
.manifesto h2,
.chapter h2,
.split-copy h2,
.contact-card h2{
  font-size:clamp(32px,4vw,54px) !important;
  line-height:1.05 !important;
  letter-spacing:-1px !important;
}
.project-tile h3,
.browser-card h3,
.value h3{
  font-size:clamp(26px,2.6vw,34px) !important;
  line-height:1.04 !important;
  letter-spacing:-.4px !important;
}
.portal h2{
  font-size:clamp(34px,4.4vw,54px) !important;
  line-height:1 !important;
  letter-spacing:-1px !important;
}

/* Remove label / strip if cached */
.vertical-label,
.stage-count,
.stage-strip{
  display:none !important;
}

/* Hero image clarity and non-conflicting image treatment */
.stage-slide,
.hero-img,
.detail-img,
.split-image{
  filter:none !important;
  transform:none !important;
  background-size:cover !important;
  background-position:center !important;
}
.stage-slide.active{
  transform:none !important;
}
.stage-overlay{
  background:
    linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.26),rgba(0,0,0,.52)),
    linear-gradient(0deg,rgba(0,0,0,.70),rgba(0,0,0,.08),rgba(0,0,0,.48)) !important;
}
.hero-vignette{
  background:
    linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.24),rgba(0,0,0,.50)),
    linear-gradient(0deg,rgba(0,0,0,.70),rgba(0,0,0,.08),rgba(0,0,0,.44)) !important;
}
.home-stage::after,
.page-hero::after,
.detail-hero::after{
  background:
    linear-gradient(90deg,rgba(0,0,0,.66),rgba(0,0,0,.10),rgba(0,0,0,.34)) !important;
}

/* Project image clarity */
.project-tile figure,
.browser-card,
.portal{
  background:#0b0b0b;
}
.project-tile img,
.browser-card img,
.portal img{
  filter:none !important;
  image-rendering:auto !important;
  transform:translateZ(0);
  backface-visibility:hidden;
}
.project-tile:hover img,
.browser-card:hover img,
.portal:hover img{
  filter:none !important;
}

/* Stronger project card contrast without making image blurry */
.project-tile figure:after,
.browser-card a::after{
  background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.08),rgba(0,0,0,.78)) !important;
}

/* Branded WhatsApp */
.footer-actions{
  display:flex;
  align-items:center;
  gap:16px;
}
.footer-whatsapp,
.floating-whatsapp{
  font-family:"Playfair Display",serif;
  font-weight:800;
  letter-spacing:-.5px;
}
.footer-whatsapp{
  width:38px;
  height:38px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#fff !important;
  background:linear-gradient(135deg,#25D366,#128C7E);
  box-shadow:0 12px 28px rgba(37,211,102,.22);
}
.floating-whatsapp{
  width:56px !important;
  height:56px !important;
  min-height:56px !important;
  padding:0 !important;
  border-radius:50% !important;
}
.floating-whatsapp span{
  font-family:"Playfair Display",serif !important;
  font-size:20px !important;
  letter-spacing:-1px !important;
  text-transform:none !important;
}

/* Better footer spacing */
.site-footer{
  flex-wrap:wrap;
}
.footer-tagline{
  font-size:18px !important;
}

@media(max-width:1050px){
  .site-header{
    height:72px !important;
  }
  .nav a{
    font-size:14px !important;
  }
  .home-stage{
    padding-top:72px;
  }
  .stage-copy{
    transform:translateY(-38%);
  }
}

@media(max-width:700px){
  .site-header{
    height:68px !important;
    padding:0 18px !important;
  }
  .brand strong{
    font-size:20px !important;
  }
  .home-stage{
    padding-top:68px;
  }
  .stage-copy{
    top:51%;
    left:6vw !important;
    width:88vw !important;
    transform:translateY(-42%);
  }
  .stage-copy h1{
    font-size:38px !important;
  }
  .page-hero{
    min-height:62vh !important;
    padding-top:68px !important;
  }
  .hero-copy{
    padding:100px 6vw 54px !important;
  }
  .page-hero h1{
    font-size:36px !important;
  }
  .site-footer{
    gap:14px !important;
  }
  .footer-actions{
    width:100%;
    justify-content:space-between;
  }
}
