
:root{
  --black:#0e0e0d; --graphite:#2c2b28; --ivory:#f3f0e8;
  --champagne:#ae8f5e; --champagne-light:#d5b882; --petrol:#183634;
  --muted:#8f8a80; --line:rgba(174,143,94,.55);
  --max:1280px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--black)}
body{margin:0;font-family:"Segoe UI",Arial,sans-serif;color:var(--graphite);background:var(--ivory);line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(var(--max),calc(100% - 72px));margin:auto}
.site-header{position:absolute;left:0;right:0;top:0;z-index:20;padding:26px 0}
.nav{display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand-lockup{display:flex;align-items:center;gap:17px}
.brand-lockup .signet{width:52px;height:52px;object-fit:contain}
.brand-lockup .wordmark{width:185px}
.nav-links{display:flex;gap:42px;align-items:center;font-size:12px;letter-spacing:.17em;text-transform:uppercase;color:#eeeae2}
.nav-links a{position:relative;padding:8px 0}
.nav-links a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--champagne);transition:.25s}
.nav-links a:hover::after,.nav-links a.active::after{width:100%}
.menu-btn{display:none;background:none;border:0;color:var(--ivory);font-size:26px}

.hero{position:relative;min-height:100vh;background:url('assets/hero-texture.jpg?v=4') center/cover;color:var(--ivory);overflow:hidden;display:flex;align-items:center}
.hero::before{content:"";position:absolute;inset:20px;border:1px solid rgba(174,143,94,.7);pointer-events:none}
.hero-copy{position:relative;z-index:3;width:48%;padding-top:80px}
.hero-copy .hero-wordmark{width:min(610px,90%);margin-bottom:34px}
.claim{font-size:24px;letter-spacing:.34em;color:var(--champagne-light);text-transform:uppercase;margin:0 0 28px}
.hero-rule{width:170px;height:1px;background:var(--champagne);position:relative;margin:30px 0}
.hero-rule::after{content:"";position:absolute;left:50%;top:50%;width:9px;height:9px;background:var(--champagne);transform:translate(-50%,-50%) rotate(45deg)}
.hero-sub{font-size:18px;max-width:520px;color:#dcd8d0}
.hero-mark{position:absolute;right:-360px;top:51%;transform:translateY(-48%);width:min(86vw,1280px);filter:drop-shadow(0 28px 34px rgba(0,0,0,.62));pointer-events:none}
.hero-mark img{width:100%;filter:drop-shadow(0 0 16px rgba(218,177,112,.22))}
.scroll-cue{position:absolute;bottom:35px;left:50%;font-size:10px;letter-spacing:.25em;color:#b7aa91;writing-mode:vertical-rl}
.section{padding:120px 0}
.section.light{background:var(--ivory)}
.section.dark{background:var(--black);color:var(--ivory)}
.section.petrol{background:var(--petrol);color:var(--ivory)}
.eyebrow{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--champagne);margin-bottom:20px}
.display{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(44px,5vw,78px);line-height:1.06;margin:0 0 28px}
.lead{font-size:20px;max-width:760px}
.intro-grid,.feature-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:90px;align-items:center}
.big-art{position:relative;min-height:430px}
.big-art img{position:absolute;inset:0;margin:auto;max-height:430px;object-fit:contain}
.gold-arc{position:absolute;border:1px solid rgba(174,143,94,.48);border-radius:50%;width:540px;height:540px;left:-230px;top:-130px}
.text-link{display:inline-flex;align-items:center;gap:20px;margin-top:30px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--champagne)}
.text-link::after{content:"→";font-size:20px}
.card-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:55px}
.brand-card{min-height:330px;padding:34px;border:1px solid rgba(174,143,94,.35);background:rgba(255,255,255,.025);display:flex;flex-direction:column;justify-content:space-between}
.brand-card img{max-height:155px;max-width:80%;margin:auto}
.brand-card h3{font-weight:400;letter-spacing:.12em;text-transform:uppercase;font-size:14px;color:var(--champagne)}
.quote-section{position:relative;overflow:hidden}
.quote-section::after{content:"";position:absolute;width:720px;height:720px;border:1px solid rgba(174,143,94,.32);border-radius:50%;right:-350px;top:-250px}
.quote{font-family:Georgia,serif;font-size:clamp(48px,6vw,94px);line-height:1.08;max-width:1100px;margin:0}
.cta{display:flex;justify-content:space-between;align-items:end;gap:40px}
.button{display:inline-flex;align-items:center;gap:34px;padding:16px 24px;border:1px solid var(--champagne);text-transform:uppercase;letter-spacing:.16em;font-size:12px}
.footer{background:#090908;color:var(--ivory);padding:70px 0 45px}
.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:50px}
.footer .signet{width:62px}
.footer .wordmark{width:210px;margin:18px 0 14px}
.footer h4{font-size:11px;letter-spacing:.18em;color:var(--champagne);text-transform:uppercase;margin:0 0 18px}
.footer a,.footer p{font-size:13px;color:#d6d1c7}
.footer-bottom{border-top:1px solid rgba(174,143,94,.28);margin-top:45px;padding-top:20px;display:flex;justify-content:space-between;color:#8f897f;font-size:12px}
.page-hero{background:var(--black);color:var(--ivory);padding:190px 0 110px;position:relative;overflow:hidden}
.page-hero .signet-ghost{position:absolute;right:-90px;top:70px;width:460px;opacity:.14}
.page-hero h1{font-family:Georgia,serif;font-size:clamp(55px,7vw,108px);font-weight:400;margin:0}
.page-hero p{font-size:20px;max-width:720px;color:#ccc6bb}
.identity-block{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;padding:100px 0;border-bottom:1px solid rgba(44,43,40,.15)}
.identity-block:nth-child(even){direction:rtl}.identity-block:nth-child(even)>*{direction:ltr}
.identity-art{min-height:400px;display:flex;align-items:center;justify-content:center;background:#ece8df;position:relative;overflow:hidden}
.identity-art.dark{background:var(--black)}
.identity-art img{max-height:330px;max-width:70%}
.legal{max-width:900px;margin:auto}
.legal h2{margin-top:45px}
.notice{border-left:3px solid var(--champagne);padding:16px 20px;background:#eee8dc;margin:30px 0}
.contact-panel{display:grid;grid-template-columns:1fr 1fr;gap:70px}
.field{margin-bottom:22px}
.field label{display:block;font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:var(--champagne);margin-bottom:7px}
.field input,.field textarea{width:100%;padding:14px;border:1px solid #c9c0b1;background:transparent;font:inherit}
.field textarea{min-height:150px}
@media(max-width:900px){
 .container{width:min(100% - 34px,var(--max))}
 .nav-links{display:none}.menu-btn{display:block}
 .hero{min-height:820px;align-items:flex-start;padding-top:180px}
 .hero-copy{width:100%}.hero-mark{width:720px;right:-390px;top:65%;opacity:.55}
 .claim{font-size:16px;letter-spacing:.22em}.hero-sub{max-width:68%}
 .intro-grid,.feature-grid,.identity-block,.contact-panel{grid-template-columns:1fr;gap:40px}
 .identity-block:nth-child(even){direction:ltr}
 .card-strip{grid-template-columns:1fr}
 .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
 .hero-mark{width:620px;right:-390px;top:70%}.hero-copy .hero-wordmark{width:85%}
 .hero-sub{max-width:90%}.section{padding:80px 0}
 .footer-grid{grid-template-columns:1fr}
 .page-hero{padding-top:150px}
}


.brand-object{
  position:relative;min-height:520px;border:1px solid rgba(174,143,94,.42);
  background:
    radial-gradient(circle at 70% 22%,rgba(174,143,94,.12),transparent 28%),
    linear-gradient(145deg,#171714,#0b0b0a 62%,#15130f);
  overflow:hidden;box-shadow:0 28px 70px rgba(31,26,19,.17);
}
.brand-object::before{
  content:"";position:absolute;inset:18px;border:1px solid rgba(174,143,94,.18)
}
.brand-object::after{
  content:"";position:absolute;width:580px;height:580px;border:1px solid rgba(174,143,94,.20);
  border-radius:50%;right:-310px;top:-300px
}
.brand-object img{
  position:absolute;inset:0;margin:auto;max-width:76%;max-height:76%;
  object-fit:contain;filter:drop-shadow(0 20px 28px rgba(0,0,0,.6))
}
.legal-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:80px;align-items:start}
.legal-nav{position:sticky;top:35px;padding:26px 0;border-top:1px solid var(--champagne)}
.legal-nav .eyebrow{margin-bottom:16px}
.legal-nav a{display:block;padding:7px 0;color:#6f695f;font-size:14px}
.legal-nav a:hover{color:var(--black)}
.legal-main{max-width:860px}
.legal-card{
  padding:34px 38px;margin:0 0 24px;background:#faf8f2;
  border:1px solid rgba(44,43,40,.10);box-shadow:0 12px 35px rgba(34,29,20,.045)
}
.legal-card h2{font-family:Georgia,serif;font-size:32px;font-weight:400;margin:0 0 16px}
.legal-card h3{font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--champagne);margin:28px 0 8px}
.legal-card p,.legal-card li{font-size:16px;line-height:1.72;color:#4a4741}
.legal-card ul{padding-left:19px}
.legal-status{
  margin-bottom:34px;padding:22px 26px;border:1px solid rgba(174,143,94,.42);
  background:#eee7da;color:#4c463c
}
.legal-status strong{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#8d7046;margin-bottom:7px}
.legal-meta{font-size:13px;color:#817a70;margin-top:45px}
@media(max-width:900px){
 .hero-mark{width:980px;right:-610px;top:66%;opacity:.64}
 .brand-object{min-height:380px}
 .legal-layout{grid-template-columns:1fr;gap:30px}.legal-nav{position:static}
}
@media(max-width:560px){
 .hero-mark{width:820px;right:-590px;top:70%}
 .brand-object{min-height:320px}
 .legal-card{padding:25px 22px}
}


/* ===== ASVANT V3 — approved visual direction ===== */
.hero{
  min-height:100svh;
  background:
    radial-gradient(circle at 64% 24%,rgba(155,112,58,.10),transparent 31%),
    url('assets/material-dark.jpg?v=4') center/cover;
}
.hero::before{inset:18px;border-color:rgba(174,143,94,.68)}
.hero-copy{width:46%;padding-top:92px}
.hero-copy .hero-wordmark{width:min(620px,94%);margin-bottom:26px}
.hero .claim{font-size:20px;letter-spacing:.36em}
.hero .hero-sub{font-size:17px;line-height:1.7;color:#bdb7ad;max-width:500px}
.hero .button{display:none}
.hero-mark{
  right:-8.5vw !important; top:50% !important; width:67vw !important;
  height:100%; transform:translateY(-50%) !important; opacity:1 !important;
  background:url('assets/hero-approved-art.jpg') left center/cover no-repeat;
  filter:none !important;
}
.hero-mark img{display:none}
.hero::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(8,8,7,.20) 0%,rgba(8,8,7,.04) 42%,transparent 66%);
}
.hero-copy,.site-header,.scroll-cue{z-index:4}
.scroll-cue{opacity:.65}

.home-intro{position:relative;overflow:hidden;background:#f3f0e8}
.home-intro::before{
  content:"";position:absolute;right:-11vw;top:-20vw;width:54vw;height:54vw;
  border:1px solid rgba(174,143,94,.20);border-radius:50%;
}
.home-intro .intro-grid{min-height:610px}
.home-intro .brand-object{
  min-height:500px;border:0;
  background:linear-gradient(145deg,#191816,#090908 68%);
  box-shadow:0 38px 85px rgba(34,28,19,.19);
}
.home-intro .brand-object::before{inset:15px;border-color:rgba(174,143,94,.30)}
.home-intro .brand-object img{max-width:84%;max-height:84%}

.identity-teaser{position:relative;background:#0c0c0b;overflow:hidden}
.identity-teaser::before{
  content:"";position:absolute;inset:0;background:url('assets/material-dark.jpg?v=4') center/cover;opacity:.55
}
.identity-teaser>.container{position:relative}
.identity-stage{
  margin-top:60px;display:grid;grid-template-columns:1.15fr .85fr;
  min-height:590px;border:1px solid rgba(174,143,94,.30);overflow:hidden
}
.identity-stage-main{
  position:relative;background:linear-gradient(145deg,rgba(24,23,20,.96),rgba(7,7,7,.98));
  display:flex;align-items:center;justify-content:center;overflow:hidden
}
.identity-stage-main::after{
  content:"";position:absolute;width:680px;height:680px;border:1px solid rgba(174,143,94,.17);
  border-radius:50%;right:-280px;bottom:-380px
}
.identity-stage-main img{width:68%;filter:drop-shadow(0 24px 32px rgba(0,0,0,.55))}
.identity-stage-side{display:grid;grid-template-rows:1fr 1fr;background:#f0ece3}
.identity-mini{display:flex;align-items:center;justify-content:center;padding:55px;position:relative}
.identity-mini:first-child{border-bottom:1px solid rgba(44,43,40,.14)}
.identity-mini img{max-width:75%;max-height:150px}
.identity-mini.dark{background:#183634}
.identity-mini.dark img{filter:drop-shadow(0 15px 25px rgba(0,0,0,.22))}
.stage-label{
  position:absolute;left:24px;bottom:18px;font-size:10px;letter-spacing:.19em;
  text-transform:uppercase;color:#a88b60
}

.haltung-cinematic{
  position:relative;min-height:760px;display:flex;align-items:center;overflow:hidden;
  background:linear-gradient(90deg,rgba(16,40,38,.97),rgba(17,42,40,.82)),
             url('assets/material-petrol.jpg?v=4') center/cover;
}
.haltung-cinematic::before{
  content:"";position:absolute;width:880px;height:880px;border:1px solid rgba(205,181,137,.22);
  border-radius:50%;right:-300px;top:-390px
}
.haltung-cinematic::after{
  content:"";position:absolute;right:-10vw;bottom:-34vw;width:68vw;height:68vw;
  background:url('assets/signet-champagne.png') center/contain no-repeat;opacity:.075
}
.haltung-cinematic .container{position:relative;z-index:2}
.haltung-cinematic .quote{max-width:900px}

.contact-cinematic{
  position:relative;overflow:hidden;background:#0b0b0a;min-height:520px;display:flex;align-items:center
}
.contact-cinematic::before{
  content:"";position:absolute;right:-230px;top:-300px;width:780px;height:780px;
  border:1px solid rgba(174,143,94,.28);border-radius:50%
}
.contact-cinematic::after{
  content:"";position:absolute;right:-115px;bottom:-250px;width:570px;height:570px;
  background:url('assets/signet-champagne.png') center/contain no-repeat;opacity:.14
}
.contact-cinematic .container{position:relative;z-index:2}

.page-hero{
 background:
   linear-gradient(90deg,rgba(10,10,9,.97),rgba(10,10,9,.77)),
   url('assets/material-dark.jpg?v=4') center/cover;
 min-height:540px;display:flex;align-items:center;padding-top:150px
}
.page-hero .signet-ghost{width:600px;right:-180px;top:-60px;opacity:.11}

.identity-art{
 border:1px solid rgba(174,143,94,.22);
 box-shadow:0 28px 65px rgba(38,31,21,.09)
}
.identity-art.dark{
 background:linear-gradient(145deg,#181714,#080808);
}
.identity-art.dark::after{
 content:"";position:absolute;inset:16px;border:1px solid rgba(174,143,94,.20)
}

@media(max-width:900px){
 .hero{min-height:860px}
 .hero-copy{width:74%;padding-top:120px}
 .hero-mark{width:95vw !important;right:-49vw !important;top:63% !important;height:72%}
 .hero::after{background:linear-gradient(90deg,rgba(8,8,7,.35),rgba(8,8,7,.05))}
 .identity-stage{grid-template-columns:1fr;min-height:820px}
 .identity-stage-side{grid-template-columns:1fr 1fr;grid-template-rows:none}
 .identity-mini:first-child{border-bottom:0;border-right:1px solid rgba(44,43,40,.14)}
 .haltung-cinematic{min-height:650px}
}
@media(max-width:560px){
 .hero{min-height:780px}
 .hero-copy{width:92%;padding-top:115px}
 .hero-copy .hero-wordmark{width:82%}
 .hero .claim{font-size:13px;letter-spacing:.25em}
 .hero-mark{width:130vw !important;right:-82vw !important;top:67% !important;height:66%}
 .hero .hero-sub{font-size:15px;max-width:80%}
 .home-intro .brand-object{min-height:350px}
 .identity-stage{min-height:720px}
 .identity-stage-side{grid-template-columns:1fr;grid-template-rows:1fr 1fr}
 .identity-mini:first-child{border-right:0;border-bottom:1px solid rgba(44,43,40,.14)}
}

.cookie-banner{position:fixed;left:22px;right:22px;bottom:22px;z-index:1000;max-width:1180px;margin:auto;padding:25px 28px;background:rgba(12,12,11,.97);border:1px solid rgba(174,143,94,.46);box-shadow:0 24px 70px rgba(0,0,0,.38);color:#d8d2c7;display:none}.cookie-banner.show{display:block}.cookie-inner{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}.cookie-banner h2{font-family:Georgia,serif;font-size:23px;font-weight:400;color:#f2eee6;margin:0 0 8px}.cookie-banner p{font-size:13px;line-height:1.65;margin:0;max-width:760px}.cookie-banner a{color:#cdb483}.cookie-actions{display:flex;gap:10px;flex-wrap:wrap}.cookie-btn{border:1px solid rgba(205,180,131,.65);background:transparent;color:#eee8dd;padding:12px 17px;font-size:11px;letter-spacing:.11em;text-transform:uppercase;cursor:pointer}.cookie-btn.primary{background:#b39768;color:#111;border-color:#b39768}.cookie-settings{position:fixed;inset:0;z-index:1001;background:rgba(0,0,0,.68);display:none;align-items:center;justify-content:center;padding:20px}.cookie-settings.show{display:flex}.cookie-panel{width:min(680px,100%);max-height:88vh;overflow:auto;background:#11110f;color:#d8d2c7;border:1px solid rgba(174,143,94,.45);padding:34px}.cookie-panel h2{font-family:Georgia,serif;font-size:31px;font-weight:400;color:#f2eee6}.cookie-row{display:flex;justify-content:space-between;gap:25px;padding:18px 0;border-top:1px solid rgba(255,255,255,.09)}.cookie-state{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#bba374;white-space:nowrap}.cookie-footer-link{background:none;border:0;padding:0;color:inherit;cursor:pointer;font:inherit}@media(max-width:700px){.cookie-banner{left:10px;right:10px;bottom:10px;padding:20px}.cookie-inner{grid-template-columns:1fr;gap:18px}.cookie-btn{flex:1}.cookie-panel{padding:25px 21px}}

/* ===== V12 — Legal pages: restore ASVANT visual scale ===== */
.legal-page .page-hero{
  min-height:58vh;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 82% 44%,rgba(174,143,94,.13),transparent 29%),
    url('assets/material-dark-v5.jpg') center/cover;
}
.legal-page .page-hero::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(7,7,6,.96) 0%,rgba(7,7,6,.72) 48%,rgba(7,7,6,.14) 100%);
}
.legal-page .page-hero .container{position:relative;z-index:3}
.legal-page .page-hero h1{font-size:clamp(68px,7.2vw,126px);line-height:.92}
.legal-page .page-hero p:not(.eyebrow){max-width:650px}
.legal-page .legal-hero-mark{
  position:absolute;z-index:2;width:min(770px,55vw);right:-8vw;top:50%;
  transform:translateY(-50%);opacity:.5;mix-blend-mode:screen;
  -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 28%);
  mask-image:linear-gradient(to right,transparent 0%,#000 28%);
}
.legal-page .legal-layout{
  display:grid;grid-template-columns:240px minmax(0,1fr);gap:70px;
  align-items:start;
}
.legal-page .legal-main{max-width:980px;width:100%}
.legal-page .legal-card{padding:38px 42px;margin-bottom:22px}
.legal-page .legal-card h2{font-size:30px;margin-bottom:17px}
.legal-page .legal-card p{font-size:16px;line-height:1.78;max-width:860px}
.legal-page .legal-nav{
  display:block;position:sticky;top:115px;padding-top:8px
}
.legal-page .legal-nav a{
  display:block;padding:10px 0;border-bottom:1px solid rgba(30,30,27,.12);
  font-size:12px;letter-spacing:.08em;text-transform:uppercase
}
@media(max-width:900px){
 .legal-page .page-hero{min-height:58svh;padding:145px 0 70px}
 .legal-page .page-hero h1{font-size:clamp(52px,15vw,78px)}
 .legal-page .legal-hero-mark{width:125vw;right:-72vw;opacity:.33}
 .legal-page .legal-layout{display:block}
 .legal-page .legal-nav{display:none}
 .legal-page .legal-main{max-width:none}
 .legal-page .legal-card{padding:27px 22px}
 .legal-page .legal-card h2{font-size:25px}
 .legal-page .legal-card p{font-size:15px}
}

/* ===== V13 — Legal hero uses the approved ASVANT hero language ===== */
.legal-page .page-hero{
  min-height:72vh;
  padding:0;
  display:flex;
  align-items:center;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 78% 18%,rgba(155,112,58,.10),transparent 30%),
    url('assets/material-dark-v5.jpg') center/cover;
}
.legal-page .page-hero::before{
  content:"";
  position:absolute;
  inset:18px;
  border:1px solid rgba(174,143,94,.68);
  z-index:5;
  pointer-events:none;
  background:none;
}
.legal-page .page-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:linear-gradient(90deg,rgba(8,8,7,.93) 0%,rgba(8,8,7,.78) 42%,rgba(8,8,7,.20) 69%,rgba(8,8,7,0) 100%);
}
.legal-page .page-hero .container{
  position:relative;
  z-index:4;
  width:calc(100% - 120px);
  max-width:none;
  margin:0 60px;
}
.legal-page .legal-hero-copy{
  width:43%;
  max-width:650px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.legal-page .legal-hero-wordmark{
  width:min(560px,100%);
  margin:0 auto 26px;
}
.legal-page .legal-hero-copy .eyebrow{
  margin:0 0 24px;
  color:var(--champagne-light);
}
.legal-page .legal-hero-copy h1{
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  font-weight:400;
  font-size:clamp(64px,6.6vw,112px);
  line-height:.96;
  color:var(--ivory);
}
.legal-page .legal-hero-rule{
  width:260px;
  height:1px;
  background:var(--champagne);
  margin:28px auto 28px;
  position:relative;
}
.legal-page .legal-hero-rule::after{
  content:"";
  position:absolute;
  left:50%;top:50%;
  width:9px;height:9px;
  background:var(--champagne);
  transform:translate(-50%,-50%) rotate(45deg);
}
.legal-page .legal-hero-copy p:last-child{
  margin:0 auto;
  max-width:500px;
  text-align:center;
  color:#bdb7ad;
  font-size:16px;
  line-height:1.75;
}
.legal-page .legal-hero-art{
  position:absolute;
  z-index:3;
  right:-8.5vw;
  top:50%;
  transform:translateY(-50%);
  width:67vw;
  height:100%;
  background:url('assets/hero-approved-art-v5.jpg') left center/cover no-repeat;
  pointer-events:none;
}
.legal-page .legal-hero-mark{display:none!important}

@media(max-width:900px){
  .legal-page .page-hero{
    min-height:72svh;
  }
  .legal-page .page-hero::before{inset:10px}
  .legal-page .page-hero .container{
    width:calc(100% - 42px);
    margin:0 21px;
  }
  .legal-page .legal-hero-copy{
    width:72%;
    max-width:520px;
    align-items:flex-start;
    text-align:left;
  }
  .legal-page .legal-hero-wordmark{
    width:min(340px,92%);
    margin:0 0 20px;
  }
  .legal-page .legal-hero-copy .eyebrow{
    margin-bottom:16px;
  }
  .legal-page .legal-hero-copy h1{
    font-size:clamp(50px,13vw,76px);
  }
  .legal-page .legal-hero-rule{
    width:150px;
    margin:24px 0 22px;
  }
  .legal-page .legal-hero-copy p:last-child{
    margin:0;
    max-width:340px;
    text-align:left;
    font-size:14px;
    line-height:1.6;
  }
  .legal-page .legal-hero-art{
    width:110vw;
    right:-66vw;
    top:63%;
    height:64%;
    opacity:.82;
  }
  .legal-page .page-hero::after{
    background:linear-gradient(90deg,rgba(8,8,7,.96) 0%,rgba(8,8,7,.82) 55%,rgba(8,8,7,.10) 86%,transparent 100%);
  }
}

@media(max-width:560px){
  .legal-page .page-hero{min-height:68svh}
  .legal-page .legal-hero-copy{width:84%}
  .legal-page .legal-hero-wordmark{width:250px}
  .legal-page .legal-hero-copy h1{font-size:50px}
  .legal-page .legal-hero-art{
    width:145vw;
    right:-96vw;
    top:68%;
    height:54%;
    opacity:.75;
  }
}

/* ===== V14 — HOME HERO alignment restoration only ===== */
/* Legal hero from v13 remains unchanged. */
@media(min-width:901px){
  body:not(.legal-page) .hero>.container{
    width:calc(100% - 120px);
    max-width:none;
    margin-left:60px;
    margin-right:60px;
  }
  body:not(.legal-page) .hero-copy{
    position:relative;
    left:auto;
    top:auto;
    transform:none;
    width:43%;
    max-width:650px;
    padding-top:88px;
    margin-left:1.6vw;
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
  }
  body:not(.legal-page) .hero-copy .hero-wordmark{
    width:min(620px,100%);
    margin:0 auto 32px;
  }
  body:not(.legal-page) .hero .claim{
    width:100%;
    margin:0 auto 32px;
    text-align:center;
    font-size:19px;
    letter-spacing:.35em;
  }
  body:not(.legal-page) .hero .hero-rule{
    width:270px;
    margin:0 auto 38px;
  }
  body:not(.legal-page) .hero .hero-sub{
    width:100%;
    max-width:510px;
    margin:0 auto;
    text-align:center;
    font-size:16px;
    line-height:1.78;
  }
}
@media(min-width:1400px){
  body:not(.legal-page) .hero-copy{
    width:44%;
    max-width:700px;
    margin-left:1.8vw;
  }
  body:not(.legal-page) .hero-copy .hero-wordmark{width:min(660px,100%)}
  body:not(.legal-page) .hero .hero-rule{width:300px}
  body:not(.legal-page) .hero .hero-sub{max-width:535px}
}

/* ===== V15 — Header brand lockup: restore approved left position ===== */
/* The centered alignment applies only to the large hero content block.
   The small signet + ASVANT wordmark in the header stays left aligned. */
@media(min-width:901px){
  body:not(.legal-page) .site-header .container{
    width:calc(100% - 88px);
    max-width:none;
    margin-left:44px;
    margin-right:44px;
  }
  body:not(.legal-page) .site-header .brand-lockup{
    margin-left:0 !important;
    margin-right:auto !important;
    justify-content:flex-start !important;
    text-align:left !important;
    transform:none !important;
  }
  body:not(.legal-page) .site-header .brand-lockup .signet{
    width:48px;
    height:48px;
  }
  body:not(.legal-page) .site-header .brand-lockup .wordmark{
    width:170px;
  }
}


/* ===== V16 — refined ASVANT color system ===== */
:root{
  --black:#0B0B0A;
  --graphite:#171613;
  --ivory:#E9E4DA;
  --stone:#D8D0C3;
  --champagne:#A98D62;
  --champagne-light:#C8AD80;
  --muted:#8B8479;
  --line:rgba(169,141,98,.48);
}

/* Global surface tuning */
body{
  background:var(--black);
  color:#2D2924;
}

/* Replace previous bright ivory surfaces with warm stone */
.section.light,
.home-intro,
.legal-page .section.light{
  background:var(--stone);
}

/* Dark sections become slightly warmer and more layered */
.section.dark,
.identity-teaser,
.contact-cinematic,
.footer,
.legal-page .page-hero,
.page-hero{
  background-color:var(--black);
}

/* Remove petrol entirely from the brand system */
.section.petrol,
.haltung-cinematic{
  background:
    radial-gradient(circle at 78% 20%,rgba(169,141,98,.08),transparent 30%),
    linear-gradient(135deg,#1A1814 0%,#12110F 56%,#0B0B0A 100%) !important;
  color:var(--ivory);
}

/* Keep depth through material, not additional hue */
.haltung-cinematic::before{
  border-color:rgba(169,141,98,.18);
}
.haltung-cinematic::after{
  opacity:.065;
}

/* Typography on light stone surfaces */
.section.light .display,
.home-intro .display,
.legal-page .legal-card h2,
.legal-page .legal-card h3{
  color:#17130F;
}
.section.light .lead,
.home-intro .lead,
.legal-page .legal-card p,
.legal-page .legal-card li{
  color:#484139;
}

/* Cards and light material panels */
.legal-card,
.identity-mini{
  background:#E2DBCF !important;
  border-color:rgba(63,54,45,.12) !important;
}
.brand-object{
  background:linear-gradient(145deg,#191714,#0B0B0A 68%) !important;
}

/* Light geometry becomes softer, like limestone/paper */
.home-intro::before,
.gold-arc,
.quote-section::after{
  border-color:rgba(169,141,98,.16) !important;
}

/* Accent consistency */
.eyebrow,
.text-link,
.footer h4,
.stage-label,
.claim,
.legal-page .legal-nav .eyebrow{
  color:var(--champagne) !important;
}
.button,
.cookie-btn{
  border-color:rgba(169,141,98,.68);
}
.button:hover{
  background:rgba(169,141,98,.08);
}

/* Footer warmer, less stark */
.footer{
  background:#090908;
}
.footer a,
.footer p{
  color:#D6CFC4;
}

/* Transition after the hero: soften the jump */
.home-intro{
  position:relative;
  background:
    linear-gradient(180deg,#CFC6B8 0%,#D8D0C3 22%,#D8D0C3 100%) !important;
  box-shadow:inset 0 28px 70px rgba(20,17,13,.06);
}

/* Contact/attitude sections use warm dark neutrals instead of petrol */
.contact-cinematic{
  background:
    radial-gradient(circle at 82% 18%,rgba(169,141,98,.08),transparent 31%),
    linear-gradient(145deg,#141310,#090908 72%) !important;
}

/* Mobile: preserve same palette with reduced contrast */
@media(max-width:900px){
  .home-intro{
    background:linear-gradient(180deg,#CEC4B6 0%,#D8D0C3 20%,#D8D0C3 100%) !important;
  }
  .section.light{
    background:var(--stone);
  }
  .identity-mini{
    background:#DDD5C8 !important;
  }
  .identity-mini.dark{
    background:#171613 !important;
  }
}


/* ===== V17 — Legal hero aligned exactly to main hero logic ===== */

/* Header on legal pages: same left-aligned small signet + ASVANT as homepage */
@media(min-width:901px){
  .legal-page .site-header .container{
    width:calc(100% - 88px);
    max-width:none;
    margin-left:44px;
    margin-right:44px;
  }
  .legal-page .site-header .brand-lockup{
    margin-left:0 !important;
    margin-right:auto !important;
    justify-content:flex-start !important;
    text-align:left !important;
    transform:none !important;
  }
  .legal-page .site-header .brand-lockup .signet{
    width:48px;
    height:48px;
  }
  .legal-page .site-header .brand-lockup .wordmark{
    width:170px;
  }
}

/* Legal hero adopts the same two-part composition as homepage */
.legal-page .page-hero{
  min-height:72vh;
  padding:0;
  display:flex;
  align-items:center;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 78% 18%,rgba(155,112,58,.10),transparent 30%),
    url('assets/material-dark-v5.jpg') center/cover;
}
.legal-page .page-hero::before{
  content:"";
  position:absolute;
  inset:18px;
  z-index:5;
  border:1px solid rgba(169,141,98,.68);
  pointer-events:none;
  background:none;
}
.legal-page .page-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:linear-gradient(90deg,rgba(8,8,7,.93) 0%,rgba(8,8,7,.78) 42%,rgba(8,8,7,.20) 69%,rgba(8,8,7,0) 100%);
}
.legal-page .page-hero .container{
  position:relative;
  z-index:4;
  width:calc(100% - 120px);
  max-width:none;
  margin-left:60px;
  margin-right:60px;
}
.legal-page .legal-hero-copy{
  width:43%;
  max-width:650px;
  margin-left:1.6vw;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.legal-page .legal-hero-wordmark{
  width:min(620px,100%);
  margin:0 auto 26px;
}
.legal-page .legal-hero-copy .eyebrow{
  width:100%;
  margin:0 auto 22px;
  text-align:center;
  color:var(--champagne) !important;
}
.legal-page .legal-hero-copy h1{
  width:100%;
  margin:0;
  text-align:center;
  font-family:Georgia,"Times New Roman",serif;
  font-weight:400;
  font-size:clamp(62px,6.2vw,108px);
  line-height:.96;
  color:var(--ivory);
}
.legal-page .legal-hero-rule{
  width:270px;
  height:1px;
  background:var(--champagne);
  margin:29px auto 31px;
  position:relative;
}
.legal-page .legal-hero-rule::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:9px;
  height:9px;
  background:var(--champagne);
  transform:translate(-50%,-50%) rotate(45deg);
}
.legal-page .legal-hero-copy p:last-child{
  width:100%;
  max-width:510px;
  margin:0 auto;
  text-align:center;
  color:#BDB7AD;
  font-size:16px;
  line-height:1.75;
}
.legal-page .legal-hero-art{
  position:absolute;
  z-index:3;
  right:-8.5vw;
  top:50%;
  transform:translateY(-50%);
  width:67vw;
  height:100%;
  background:url('assets/hero-approved-art-v5.jpg') left center/cover no-repeat;
  pointer-events:none;
}

@media(min-width:1400px){
  .legal-page .legal-hero-copy{
    width:44%;
    max-width:700px;
    margin-left:1.8vw;
  }
  .legal-page .legal-hero-wordmark{
    width:min(660px,100%);
  }
  .legal-page .legal-hero-rule{
    width:300px;
  }
  .legal-page .legal-hero-copy p:last-child{
    max-width:535px;
  }
}

/* Mobile follows the dedicated mobile philosophy, while preserving same hierarchy */
@media(max-width:900px){
  .legal-page .site-header .container{
    width:calc(100% - 34px);
    margin:0 17px;
  }

  .legal-page .page-hero{
    min-height:72svh;
  }
  .legal-page .page-hero::before{
    inset:10px;
  }
  .legal-page .page-hero .container{
    width:100%;
    margin:0;
  }
  .legal-page .legal-hero-copy{
    position:absolute;
    left:50%;
    top:21%;
    transform:translateX(-50%);
    width:calc(100% - 46px);
    max-width:520px;
    margin:0;
    align-items:center;
    text-align:center;
  }
  .legal-page .legal-hero-wordmark{
    width:min(380px,92%);
    margin:0 auto 20px;
  }
  .legal-page .legal-hero-copy .eyebrow{
    margin-bottom:16px;
  }
  .legal-page .legal-hero-copy h1{
    font-size:clamp(48px,13vw,72px);
    text-align:center;
  }
  .legal-page .legal-hero-rule{
    width:180px;
    margin:22px auto 22px;
  }
  .legal-page .legal-hero-copy p:last-child{
    max-width:330px;
    text-align:center;
    font-size:14px;
    line-height:1.6;
  }
  .legal-page .legal-hero-art{
    width:115vw;
    right:-67vw;
    top:70%;
    height:54%;
    opacity:.82;
  }
  .legal-page .page-hero::after{
    background:linear-gradient(180deg,rgba(8,8,7,.08) 0%,rgba(8,8,7,.05) 55%,rgba(8,8,7,.18) 100%);
  }
}

@media(max-width:560px){
  .legal-page .page-hero{
    min-height:68svh;
  }
  .legal-page .legal-hero-copy{
    top:19%;
    width:calc(100% - 34px);
  }
  .legal-page .legal-hero-wordmark{
    width:280px;
  }
  .legal-page .legal-hero-copy h1{
    font-size:48px;
  }
  .legal-page .legal-hero-copy p:last-child{
    max-width:285px;
    font-size:13px;
  }
  .legal-page .legal-hero-art{
    width:145vw;
    right:-95vw;
    top:72%;
    height:49%;
    opacity:.75;
  }
}

/* ===== V18 — typography scale + clean identity signet ===== */

/* Subpage headings were too monumental. Keep hierarchy, reduce volume. */
body:not(:has(.hero)) .page-hero h1,
.legal-page .legal-hero-copy h1{
  font-size:clamp(48px,4.8vw,78px) !important;
  line-height:1.02 !important;
}

.identity-block h2,
.section .display,
.home-intro .display,
.identity-teaser .display,
.contact-cinematic .display{
  font-size:clamp(38px,4.2vw,66px) !important;
  line-height:1.05 !important;
}

.identity-block h3,
.legal-page .legal-card h2{
  font-size:clamp(24px,2.2vw,32px) !important;
}

/* 01 SIGNET: show the actual clean asset, not the photographic/washed treatment. */
.identity-block:first-of-type .identity-art{
  background:#11100E !important;
  position:relative;
  overflow:hidden;
}
.identity-block:first-of-type .identity-art::before,
.identity-block:first-of-type .identity-art::after{
  display:none !important;
}
.identity-block:first-of-type .identity-art img{
  width:min(68%,430px) !important;
  height:auto !important;
  max-width:430px !important;
  max-height:430px !important;
  object-fit:contain !important;
  opacity:1 !important;
  filter:none !important;
  mix-blend-mode:normal !important;
  transform:none !important;
}

/* More restrained mobile typography */
@media(max-width:900px){
  body:not(:has(.hero)) .page-hero h1,
  .legal-page .legal-hero-copy h1{
    font-size:clamp(42px,10vw,58px) !important;
  }
  .identity-block h2,
  .section .display,
  .home-intro .display,
  .identity-teaser .display,
  .contact-cinematic .display{
    font-size:clamp(34px,9vw,48px) !important;
  }
}

/* ===== V19 — editorial storytelling for ASVANT / IDENTITÄT / HALTUNG ===== */
.story-section{position:relative;overflow:hidden;padding:110px 0}
.story-section.stone{background:var(--stone);color:#29251f}
.story-section.dark{background:linear-gradient(145deg,#171512,#0b0b0a 72%);color:var(--ivory)}
.story-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:9vw;align-items:center}
.story-kicker{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--champagne);margin-bottom:24px}
.story-title{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(38px,4.1vw,62px);line-height:1.06;margin:0 0 30px}
.story-copy{max-width:690px;font-size:17px;line-height:1.82}
.story-copy p{margin:0 0 20px}
.story-statement{padding:125px 0;text-align:center;position:relative;overflow:hidden}
.story-statement.dark{background:#0b0b0a;color:var(--ivory)}
.story-statement.stone{background:var(--stone);color:#1b1814}
.story-statement blockquote{font-family:Georgia,"Times New Roman",serif;font-size:clamp(42px,5.5vw,82px);font-weight:400;line-height:1.08;max-width:1120px;margin:0 auto}
.story-statement .rule{width:240px;height:1px;background:var(--champagne);margin:38px auto 0;position:relative}
.story-statement .rule:after{content:"";position:absolute;width:9px;height:9px;background:var(--champagne);left:50%;top:50%;transform:translate(-50%,-50%) rotate(45deg)}
.story-number{font-family:Georgia,serif;font-size:clamp(90px,13vw,190px);line-height:.8;color:rgba(169,141,98,.12);position:absolute;right:4vw;top:35px;pointer-events:none}
.story-geometry{position:absolute;width:520px;height:520px;border:1px solid rgba(169,141,98,.17);transform:rotate(45deg);right:-260px;top:50%;margin-top:-260px;pointer-events:none}
.story-geometry:after{content:"";position:absolute;inset:70px;border:1px solid rgba(169,141,98,.10)}
.identity-editorial{display:grid;grid-template-columns:1fr 1fr;min-height:610px}
.identity-editorial .visual{display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:#0e0e0c}
.identity-editorial .visual img{max-width:62%;max-height:390px;object-fit:contain;filter:none!important;opacity:1!important}
.identity-editorial .text{padding:90px 8vw;display:flex;flex-direction:column;justify-content:center}
.identity-editorial.stone .text{background:var(--stone);color:#2b2721}
.identity-editorial.dark .text{background:#151411;color:var(--ivory)}
.identity-editorial.reverse .visual{order:2}.identity-editorial.reverse .text{order:1}
.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(169,141,98,.22);border-top:1px solid rgba(169,141,98,.22);border-bottom:1px solid rgba(169,141,98,.22)}
.principle{background:#11100e;padding:70px 45px;min-height:330px;color:var(--ivory)}
.principle .n{font-family:Georgia,serif;font-size:17px;color:var(--champagne);margin-bottom:55px}
.principle h3{font-family:Georgia,serif;font-size:31px;font-weight:400;margin:0 0 22px}
.principle p{color:#bdb6aa;line-height:1.75;margin:0}
@media(max-width:900px){
 .story-section{padding:78px 0}.story-grid{grid-template-columns:1fr;gap:45px}.story-title{font-size:40px}.story-copy{font-size:16px}
 .story-statement{padding:90px 0}.story-statement blockquote{font-size:42px;padding:0 20px}
 .identity-editorial{grid-template-columns:1fr;min-height:0}.identity-editorial.reverse .visual,.identity-editorial.reverse .text{order:initial}
 .identity-editorial .visual{min-height:370px}.identity-editorial .text{padding:65px 25px}
 .principles{grid-template-columns:1fr}.principle{min-height:0;padding:50px 25px}.principle .n{margin-bottom:28px}
}

/* ===== V20 — 01 Signet: dedicated clean master display ===== */
.identity-editorial:first-of-type .visual{
  background:#0B0B0A !important;
}
.identity-editorial:first-of-type .visual img{
  width:min(58%,390px) !important;
  max-width:390px !important;
  max-height:390px !important;
  object-fit:contain !important;
  opacity:1 !important;
  filter:none !important;
  mix-blend-mode:normal !important;
  image-rendering:auto !important;
}

/* ===== V21 — Identity 01 uses the exact homepage signet master ===== */
.identity-editorial:first-of-type .visual img{
  opacity:1 !important;
  filter:none !important;
  mix-blend-mode:normal !important;
  object-fit:contain !important;
}

/* ===== V22 — mobile reset + clean identity signet ===== */

/* Identity 01: use the same polished signet artwork used on the homepage */
.identity-editorial:first-of-type .visual{
  background:linear-gradient(145deg,#171512,#0B0B0A 72%) !important;
}
.identity-editorial:first-of-type .visual img{
  width:min(68%,460px) !important;
  max-width:460px !important;
  max-height:460px !important;
  opacity:1 !important;
  filter:none !important;
  mix-blend-mode:normal !important;
  object-fit:contain !important;
}

/* MOBILE: one authoritative composition for the homepage hero */
@media(max-width:900px){
  body:not(.legal-page) .hero{
    min-height:100svh !important;
    height:100svh !important;
    padding:0 !important;
    display:block !important;
    overflow:hidden !important;
    position:relative !important;
  }

  body:not(.legal-page) .hero>.container{
    width:100% !important;
    height:100% !important;
    margin:0 !important;
    max-width:none !important;
    position:relative !important;
    z-index:5 !important;
  }

  body:not(.legal-page) .hero-copy{
    position:absolute !important;
    left:50% !important;
    top:18% !important;
    transform:translateX(-50%) !important;
    width:calc(100% - 44px) !important;
    max-width:520px !important;
    padding:0 !important;
    margin:0 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    text-align:center !important;
  }

  body:not(.legal-page) .hero-copy .hero-wordmark{
    width:min(380px,92%) !important;
    margin:0 auto 19px !important;
  }

  body:not(.legal-page) .hero .claim{
    width:100% !important;
    margin:0 auto 17px !important;
    text-align:center !important;
    white-space:nowrap !important;
    font-size:12px !important;
    letter-spacing:.23em !important;
  }

  body:not(.legal-page) .hero .hero-rule{
    width:185px !important;
    margin:0 auto 18px !important;
  }

  body:not(.legal-page) .hero .hero-sub{
    width:100% !important;
    max-width:310px !important;
    margin:0 auto !important;
    text-align:center !important;
    font-size:13px !important;
    line-height:1.58 !important;
  }

  body:not(.legal-page) .hero-mark{
    display:block !important;
    position:absolute !important;
    width:138vw !important;
    height:54vh !important;
    right:-83vw !important;
    left:auto !important;
    top:71% !important;
    transform:translateY(-50%) !important;
    background:url('assets/hero-approved-art-v5.jpg') left center/cover no-repeat !important;
    opacity:.88 !important;
    filter:none !important;
    z-index:2 !important;
    -webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.25) 9%,#000 25%),
                       linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.30) 8%,#000 22%);
    -webkit-mask-composite:source-in;
    mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.25) 9%,#000 25%),
               linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.30) 8%,#000 22%);
    mask-composite:intersect;
  }

  /* Standard subpage heroes: compact, readable, same family */
  body:not(.legal-page) .page-hero{
    min-height:62svh !important;
    padding:135px 0 62px !important;
    display:flex !important;
    align-items:flex-end !important;
    position:relative !important;
    overflow:hidden !important;
  }

  body:not(.legal-page) .page-hero .container{
    position:relative !important;
    z-index:3 !important;
  }

  body:not(.legal-page) .page-hero h1{
    font-size:clamp(44px,11vw,58px) !important;
    line-height:1.02 !important;
    margin:0 0 18px !important;
  }

  body:not(.legal-page) .page-hero p{
    max-width:88% !important;
    font-size:15px !important;
    line-height:1.6 !important;
  }

  body:not(.legal-page) .page-hero .signet-ghost{
    width:92vw !important;
    right:-48vw !important;
    top:19% !important;
    opacity:.10 !important;
  }

  /* Legal heroes: same mobile logic, centered copy, art lower/right */
  .legal-page .page-hero{
    min-height:68svh !important;
    padding:0 !important;
  }

  .legal-page .page-hero .container{
    width:100% !important;
    height:100% !important;
    margin:0 !important;
    position:relative !important;
  }

  .legal-page .legal-hero-copy{
    position:absolute !important;
    left:50% !important;
    top:18% !important;
    transform:translateX(-50%) !important;
    width:calc(100% - 40px) !important;
    max-width:500px !important;
    margin:0 !important;
    align-items:center !important;
    text-align:center !important;
  }

  .legal-page .legal-hero-wordmark{
    width:min(310px,86%) !important;
    margin:0 auto 18px !important;
  }

  .legal-page .legal-hero-copy .eyebrow{
    margin:0 auto 14px !important;
    text-align:center !important;
  }

  .legal-page .legal-hero-copy h1{
    font-size:clamp(42px,11vw,56px) !important;
    line-height:1.02 !important;
    text-align:center !important;
  }

  .legal-page .legal-hero-rule{
    width:170px !important;
    margin:20px auto 20px !important;
  }

  .legal-page .legal-hero-copy p:last-child{
    max-width:300px !important;
    margin:0 auto !important;
    text-align:center !important;
    font-size:13px !important;
    line-height:1.58 !important;
  }

  .legal-page .legal-hero-art{
    width:132vw !important;
    height:48vh !important;
    right:-84vw !important;
    top:72% !important;
    opacity:.78 !important;
  }
}

@media(max-width:560px){
  body:not(.legal-page) .hero-copy{
    top:17% !important;
    width:calc(100% - 32px) !important;
  }
  body:not(.legal-page) .hero-copy .hero-wordmark{
    width:min(300px,90%) !important;
  }
  body:not(.legal-page) .hero .claim{
    font-size:10.5px !important;
    letter-spacing:.19em !important;
  }
  body:not(.legal-page) .hero .hero-rule{
    width:160px !important;
  }
  body:not(.legal-page) .hero .hero-sub{
    max-width:278px !important;
    font-size:12.5px !important;
  }
  body:not(.legal-page) .hero-mark{
    width:158vw !important;
    height:49vh !important;
    right:-101vw !important;
    top:73% !important;
  }

  body:not(.legal-page) .page-hero{
    min-height:58svh !important;
    padding:125px 0 55px !important;
  }
  body:not(.legal-page) .page-hero h1{
    font-size:42px !important;
  }

  .legal-page .page-hero{
    min-height:64svh !important;
  }
  .legal-page .legal-hero-copy{
    top:17% !important;
    width:calc(100% - 30px) !important;
  }
  .legal-page .legal-hero-wordmark{
    width:245px !important;
  }
  .legal-page .legal-hero-copy h1{
    font-size:44px !important;
  }
  .legal-page .legal-hero-art{
    width:150vw !important;
    right:-100vw !important;
    top:73% !important;
    height:45vh !important;
  }
}

/* ===== V23 — smartphone polish based on real iPhone screenshots ===== */
@media(max-width:900px){
  /* Header must always be the highest interactive layer */
  .site-header{
    position:absolute !important;
    top:0 !important; left:0 !important; right:0 !important;
    z-index:10000 !important;
    pointer-events:none !important;
  }
  .site-header .container{pointer-events:auto !important}
  .menu-toggle{
    position:relative !important;
    z-index:10002 !important;
    pointer-events:auto !important;
    cursor:pointer !important;
    touch-action:manipulation !important;
    min-width:48px !important;
    min-height:48px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
  .mobile-menu{
    position:fixed !important;
    inset:0 !important;
    z-index:10001 !important;
    background:rgba(9,9,8,.985) !important;
    padding:125px 28px 40px !important;
    overflow-y:auto !important;
    -webkit-overflow-scrolling:touch !important;
    pointer-events:auto !important;
  }
  .mobile-menu a{
    display:block !important;
    padding:15px 0 !important;
    font-size:22px !important;
    line-height:1.25 !important;
    pointer-events:auto !important;
  }

  /* Main home hero: screenshots show this composition is already strong.
     Only improve vertical breathing and prevent lower art from crowding copy. */
  body:not(.legal-page) .hero-copy{
    top:19.5% !important;
  }
  body:not(.legal-page) .hero-mark{
    top:75% !important;
    height:48vh !important;
  }

  /* ASVANT / IDENTITÄT / HALTUNG normal subpage hero:
     screenshot 2 is too tall and the content is visually bottom-heavy. */
  body:not(.legal-page) .page-hero{
    min-height:52svh !important;
    padding:128px 0 48px !important;
    align-items:center !important;
  }
  body:not(.legal-page) .page-hero .container{
    width:calc(100% - 54px) !important;
    margin:0 27px !important;
  }
  body:not(.legal-page) .page-hero .eyebrow{
    margin-bottom:20px !important;
    font-size:11px !important;
    letter-spacing:.22em !important;
  }
  body:not(.legal-page) .page-hero h1{
    font-size:clamp(40px,10.5vw,52px) !important;
    margin-bottom:20px !important;
  }
  body:not(.legal-page) .page-hero p{
    max-width:94% !important;
    font-size:14px !important;
    line-height:1.62 !important;
  }
  body:not(.legal-page) .page-hero .signet-ghost{
    width:82vw !important;
    right:-47vw !important;
    top:18% !important;
    opacity:.085 !important;
  }

  /* Editorial text immediately after hero: headline in screenshot is too large */
  .story-section{padding:68px 0 !important}
  .story-section .container{width:calc(100% - 54px) !important;margin:0 27px !important}
  .story-title{
    font-size:clamp(32px,8.5vw,42px) !important;
    line-height:1.08 !important;
  }
  .story-copy{font-size:15px !important;line-height:1.72 !important}
  .story-number{font-size:92px !important;right:12px !important;top:30px !important}

  /* Legal hero: keep the look, fix lower text collision seen in Datenschutz */
  .legal-page .page-hero{
    min-height:61svh !important;
  }
  .legal-page .legal-hero-copy{
    top:20% !important;
  }
  .legal-page .legal-hero-wordmark{
    width:245px !important;
    margin-bottom:15px !important;
  }
  .legal-page .legal-hero-copy .eyebrow{
    margin-bottom:12px !important;
    font-size:10.5px !important;
  }
  .legal-page .legal-hero-copy h1{
    font-size:clamp(39px,10vw,48px) !important;
  }
  .legal-page .legal-hero-rule{
    width:155px !important;
    margin:17px auto 16px !important;
  }
  .legal-page .legal-hero-copy p:last-child{
    max-width:285px !important;
    font-size:12px !important;
    line-height:1.48 !important;
  }
  .legal-page .legal-hero-art{
    top:76% !important;
    height:42vh !important;
    opacity:.72 !important;
  }

  /* Legal cards less oversized on phone */
  .legal-page .section.light{padding:62px 0 !important}
  .legal-page .legal-card{
    padding:27px 24px !important;
    margin-bottom:18px !important;
  }
  .legal-page .legal-card h2{
    font-size:clamp(24px,7vw,31px) !important;
    line-height:1.12 !important;
  }
  .legal-page .legal-card p{
    font-size:14px !important;
    line-height:1.68 !important;
  }
}
@media(max-width:560px){
  body:not(.legal-page) .hero-copy{top:18.5% !important}
  body:not(.legal-page) .hero-mark{top:76% !important;height:46vh !important}
  body:not(.legal-page) .page-hero{min-height:50svh !important;padding-top:120px !important}
  .legal-page .page-hero{min-height:59svh !important}
  .legal-page .legal-hero-copy{top:19.5% !important}
  .legal-page .legal-hero-art{top:77% !important;height:40vh !important}
}

@media(max-width:900px){
 .mobile-menu{display:none !important}
 .mobile-menu.open{display:block !important}
 body.menu-open{overflow:hidden !important}
}

/* ===== V24 — definitive mobile navigation fix ===== */
@media(max-width:900px){
  .site-header{
    z-index:20000 !important;
    pointer-events:none !important;
  }

  .site-header .nav{
    position:relative !important;
    z-index:20001 !important;
    pointer-events:auto !important;
  }

  .menu-btn{
    display:flex !important;
    position:relative !important;
    z-index:20003 !important;
    width:50px !important;
    height:50px !important;
    min-width:50px !important;
    min-height:50px !important;
    padding:0 !important;
    margin:0 !important;
    align-items:center !important;
    justify-content:center !important;
    border:0 !important;
    background:transparent !important;
    color:transparent !important;
    cursor:pointer !important;
    touch-action:manipulation !important;
    -webkit-tap-highlight-color:transparent !important;
    font-size:0 !important;
  }

  .menu-btn::before,
  .menu-btn::after{
    content:"" !important;
    position:absolute !important;
    left:11px !important;
    width:28px !important;
    height:1.5px !important;
    background:#E9E4DA !important;
    transition:transform .25s ease, top .25s ease !important;
  }
  .menu-btn::before{top:18px !important}
  .menu-btn::after{top:30px !important}

  body.menu-open .menu-btn::before{
    top:24px !important;
    transform:rotate(45deg) !important;
  }
  body.menu-open .menu-btn::after{
    top:24px !important;
    transform:rotate(-45deg) !important;
  }

  .nav-links{
    display:flex !important;
    position:fixed !important;
    inset:0 !important;
    z-index:20002 !important;
    width:100vw !important;
    height:100dvh !important;
    margin:0 !important;
    padding:125px 30px 42px !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:4px !important;
    background:
      radial-gradient(circle at 88% 16%,rgba(169,141,98,.12),transparent 28%),
      #0B0B0A !important;
    border:0 !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transform:translateY(-8px) !important;
    transition:opacity .24s ease, transform .24s ease, visibility .24s ease !important;
    overflow-y:auto !important;
    -webkit-overflow-scrolling:touch !important;
  }

  body.menu-open .nav-links{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:none !important;
  }

  .nav-links > a{
    display:block !important;
    width:100% !important;
    padding:10px 0 !important;
    font-family:Georgia,"Times New Roman",serif !important;
    font-size:clamp(31px,8.5vw,46px) !important;
    line-height:1.12 !important;
    letter-spacing:0 !important;
    text-transform:none !important;
    color:#E9E4DA !important;
  }

  .nav-links > a::after{display:none !important}
  .nav-links > a.active{color:#C8AD80 !important}

  .nav-links .language-switch{
    display:flex !important;
    width:100% !important;
    margin:auto 0 0 !important;
    padding-top:24px !important;
    border-top:1px solid rgba(169,141,98,.28) !important;
    font-family:"Segoe UI",Arial,sans-serif !important;
    font-size:12px !important;
    letter-spacing:.16em !important;
  }

  body.menu-open{
    overflow:hidden !important;
    touch-action:none !important;
  }
}

/* ===== V25 — Legal hero now uses the SAME visual construction as the homepage hero ===== */

.legal-page .page-hero{
  min-height:72vh !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  position:relative !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 64% 24%,rgba(155,112,58,.10),transparent 31%),
    url('assets/material-dark-v5.jpg') center/cover !important;
}

.legal-page .page-hero::before{
  content:"" !important;
  position:absolute !important;
  inset:18px !important;
  border:1px solid rgba(169,141,98,.68) !important;
  z-index:6 !important;
  pointer-events:none !important;
  background:none !important;
}

.legal-page .page-hero::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:3 !important;
  pointer-events:none !important;
  background:linear-gradient(90deg,rgba(8,8,7,.22) 0%,rgba(8,8,7,.05) 43%,transparent 68%) !important;
}

/* exact same oversized artwork concept as homepage */
.legal-page .legal-shared-mark{
  position:absolute !important;
  right:-8.5vw !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:67vw !important;
  height:100% !important;
  background:url('assets/hero-approved-art-v5.jpg') left center/cover no-repeat !important;
  z-index:2 !important;
  pointer-events:none !important;
  opacity:1 !important;
  filter:none !important;
}

/* remove every older legal-art treatment so no rectangular picture layer can appear */
.legal-page .legal-hero-art,
.legal-page .legal-hero-mark{
  display:none !important;
}

.legal-page .page-hero .container{
  position:relative !important;
  z-index:5 !important;
  width:calc(100% - 120px) !important;
  max-width:none !important;
  margin-left:60px !important;
  margin-right:60px !important;
}

.legal-page .legal-hero-copy{
  width:43% !important;
  max-width:650px !important;
  margin-left:1.6vw !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  text-align:center !important;
}

.legal-page .legal-hero-wordmark{
  width:min(620px,100%) !important;
  margin:0 auto 26px !important;
}

.legal-page .legal-hero-copy .eyebrow{
  width:100% !important;
  margin:0 auto 22px !important;
  text-align:center !important;
}

.legal-page .legal-hero-copy h1{
  width:100% !important;
  margin:0 !important;
  text-align:center !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:clamp(52px,5.4vw,88px) !important;
  line-height:1 !important;
  color:var(--ivory) !important;
}

.legal-page .legal-hero-rule{
  width:270px !important;
  height:1px !important;
  margin:28px auto 28px !important;
  background:var(--champagne) !important;
  position:relative !important;
}

.legal-page .legal-hero-copy p:last-child{
  max-width:510px !important;
  margin:0 auto !important;
  text-align:center !important;
  color:#BDB7AD !important;
  font-size:16px !important;
  line-height:1.72 !important;
}

@media(max-width:900px){
  .legal-page .page-hero{
    min-height:68svh !important;
  }

  .legal-page .page-hero::before{
    inset:10px !important;
  }

  .legal-page .page-hero .container{
    width:100% !important;
    height:100% !important;
    margin:0 !important;
  }

  .legal-page .legal-hero-copy{
    position:absolute !important;
    left:50% !important;
    top:18.5% !important;
    transform:translateX(-50%) !important;
    width:calc(100% - 40px) !important;
    max-width:500px !important;
    margin:0 !important;
  }

  .legal-page .legal-hero-wordmark{
    width:min(300px,86%) !important;
    margin-bottom:16px !important;
  }

  .legal-page .legal-hero-copy .eyebrow{
    margin-bottom:12px !important;
    font-size:10.5px !important;
  }

  .legal-page .legal-hero-copy h1{
    font-size:clamp(39px,10vw,48px) !important;
  }

  .legal-page .legal-hero-rule{
    width:155px !important;
    margin:17px auto 16px !important;
  }

  .legal-page .legal-hero-copy p:last-child{
    max-width:285px !important;
    font-size:12px !important;
    line-height:1.5 !important;
  }

  .legal-page .legal-shared-mark{
    width:138vw !important;
    height:48vh !important;
    right:-88vw !important;
    top:74% !important;
    opacity:.84 !important;
  }

  .legal-page .page-hero::after{
    background:linear-gradient(180deg,rgba(8,8,7,0) 42%,rgba(8,8,7,.04) 58%,rgba(8,8,7,.14) 100%) !important;
  }
}

@media(max-width:560px){
  .legal-page .legal-hero-copy{
    top:18% !important;
    width:calc(100% - 30px) !important;
  }

  .legal-page .legal-hero-wordmark{
    width:245px !important;
  }

  .legal-page .legal-hero-copy h1{
    font-size:44px !important;
  }

  .legal-page .legal-shared-mark{
    width:155vw !important;
    height:45vh !important;
    right:-104vw !important;
    top:75% !important;
  }
}

/* ===== V26 — Legal hero is ONE seamless image plane, no overlaid rectangle ===== */
.legal-page .page-hero{
  background-image:
    linear-gradient(90deg,rgba(7,7,6,.34) 0%,rgba(7,7,6,.13) 42%,rgba(7,7,6,.02) 70%),
    url('assets/legal-hero-seamless-v26.jpg') !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
}
.legal-page .legal-shared-mark,
.legal-page .legal-hero-art,
.legal-page .legal-hero-mark{
  display:none !important;
  background:none !important;
}
.legal-page .page-hero::after{
  display:none !important;
}
@media(max-width:900px){
  .legal-page .page-hero{
    background-image:
      linear-gradient(180deg,rgba(7,7,6,.05) 0%,rgba(7,7,6,.02) 58%,rgba(7,7,6,.08) 100%),
      url('assets/legal-hero-seamless-v26.jpg') !important;
    background-size:auto 100% !important;
    background-position:61% center !important;
  }
}
@media(max-width:560px){
  .legal-page .page-hero{
    background-position:59% center !important;
  }
}


/* ===== V27 — seamless HOME hero + fluid responsive scaling ===== */

/* The page can scale fluidly between phone, tablet, notebook and large desktop. */
:root{
  --page-pad: clamp(18px, 3.1vw, 60px);
  --nav-pad: clamp(18px, 2.3vw, 44px);
  --content-max: 1380px;
}

/* Fluid global container instead of hard jumps between resolutions */
.container{
  width:min(var(--content-max), calc(100% - (var(--page-pad) * 2))) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Header also scales continuously with viewport width */
.site-header .container{
  width:calc(100% - (var(--nav-pad) * 2)) !important;
  max-width:none !important;
  margin-left:var(--nav-pad) !important;
  margin-right:var(--nav-pad) !important;
}

/* HOME HERO — remove the hard visual boundary between copy field and signet artwork */
body:not(.legal-page) .hero{
  min-height:clamp(720px, 100svh, 1080px) !important;
  height:auto !important;
  background:
    radial-gradient(circle at 70% 22%, rgba(155,112,58,.10), transparent 32%),
    url('assets/material-dark-v5.jpg') center/cover no-repeat !important;
}

/* A broad feather over the signet side: same principle as the improved legal hero */
body:not(.legal-page) .hero::after{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:3 !important;
  pointer-events:none !important;
  background:
    linear-gradient(
      90deg,
      rgba(11,11,10,.00) 0%,
      rgba(11,11,10,.00) 34%,
      rgba(11,11,10,.08) 43%,
      rgba(11,11,10,.20) 49%,
      rgba(11,11,10,.08) 56%,
      rgba(11,11,10,0) 67%
    ) !important;
}

/* The approved artwork itself is feathered at the left edge rather than starting abruptly */
body:not(.legal-page) .hero-mark{
  right:clamp(-220px, -8.5vw, -90px) !important;
  top:50% !important;
  width:clamp(760px, 67vw, 1320px) !important;
  height:100% !important;
  transform:translateY(-50%) !important;
  background:url('assets/hero-approved-art-v5.jpg') left center/cover no-repeat !important;
  opacity:1 !important;
  filter:none !important;
  z-index:2 !important;

  -webkit-mask-image:linear-gradient(
    to right,
    transparent 0%,
    rgba(0,0,0,.12) 5%,
    rgba(0,0,0,.52) 12%,
    #000 23%
  ) !important;
  mask-image:linear-gradient(
    to right,
    transparent 0%,
    rgba(0,0,0,.12) 5%,
    rgba(0,0,0,.52) 12%,
    #000 23%
  ) !important;
}

/* Home hero copy scales continuously instead of relying on fixed desktop sizes */
body:not(.legal-page) .hero>.container{
  width:calc(100% - (var(--page-pad) * 2)) !important;
  max-width:none !important;
  margin-left:var(--page-pad) !important;
  margin-right:var(--page-pad) !important;
}

body:not(.legal-page) .hero-copy{
  width:clamp(390px, 43vw, 700px) !important;
  max-width:44vw !important;
  margin-left:clamp(0px, 1.6vw, 30px) !important;
  padding-top:clamp(70px, 7vh, 105px) !important;
}

body:not(.legal-page) .hero-copy .hero-wordmark{
  width:clamp(380px, 38vw, 660px) !important;
  max-width:100% !important;
}

body:not(.legal-page) .hero .claim{
  font-size:clamp(14px, 1.1vw, 19px) !important;
  letter-spacing:clamp(.22em, .35vw, .35em) !important;
}

body:not(.legal-page) .hero .hero-rule{
  width:clamp(190px, 18vw, 300px) !important;
}

body:not(.legal-page) .hero .hero-sub{
  max-width:clamp(360px, 34vw, 535px) !important;
  font-size:clamp(14px, 1vw, 16px) !important;
}

/* Large ultrawide displays: prevent the signet/copy from drifting too far apart */
@media(min-width:1800px){
  body:not(.legal-page) .hero-copy{
    max-width:720px !important;
    width:720px !important;
  }
  body:not(.legal-page) .hero-mark{
    width:min(70vw, 1450px) !important;
    right:max(-9vw, -250px) !important;
  }
}

/* Tablet landscape / small notebook: still one composition, scaled fluidly */
@media(max-width:1100px) and (min-width:901px){
  body:not(.legal-page) .hero-copy{
    width:44vw !important;
    max-width:520px !important;
    margin-left:0 !important;
  }
  body:not(.legal-page) .hero-copy .hero-wordmark{
    width:min(44vw, 500px) !important;
  }
  body:not(.legal-page) .hero-mark{
    width:78vw !important;
    right:-20vw !important;
  }
}

/* Mobile: one fluid portrait composition, not device-specific pixel positioning */
@media(max-width:900px){
  :root{
    --page-pad: clamp(16px, 5vw, 28px);
    --nav-pad: clamp(16px, 4vw, 24px);
  }

  body:not(.legal-page) .hero{
    min-height:100svh !important;
    height:100svh !important;
  }

  body:not(.legal-page) .hero>.container{
    width:100% !important;
    height:100% !important;
    margin:0 !important;
  }

  body:not(.legal-page) .hero-copy{
    position:absolute !important;
    left:50% !important;
    top:clamp(135px, 18svh, 190px) !important;
    transform:translateX(-50%) !important;
    width:min(88vw, 520px) !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    align-items:center !important;
    text-align:center !important;
  }

  body:not(.legal-page) .hero-copy .hero-wordmark{
    width:min(76vw, 390px) !important;
    margin:0 auto clamp(15px, 2.4vh, 22px) !important;
  }

  body:not(.legal-page) .hero .claim{
    font-size:clamp(10px, 2.8vw, 13px) !important;
    letter-spacing:clamp(.17em, .55vw, .24em) !important;
    margin-bottom:clamp(14px, 2.2vh, 20px) !important;
    text-align:center !important;
    white-space:nowrap !important;
  }

  body:not(.legal-page) .hero .hero-rule{
    width:clamp(150px, 46vw, 205px) !important;
    margin:0 auto clamp(14px, 2.2vh, 20px) !important;
  }

  body:not(.legal-page) .hero .hero-sub{
    max-width:min(78vw, 330px) !important;
    font-size:clamp(12px, 3.2vw, 13.5px) !important;
    line-height:1.58 !important;
    margin:0 auto !important;
    text-align:center !important;
  }

  body:not(.legal-page) .hero-mark{
    width:clamp(720px, 145vw, 1080px) !important;
    height:clamp(360px, 52svh, 620px) !important;
    right:clamp(-690px, -93vw, -430px) !important;
    top:clamp(64%, 72svh, 76%) !important;
    opacity:.90 !important;

    -webkit-mask-image:
      linear-gradient(to right, transparent 0%, rgba(0,0,0,.18) 8%, #000 25%),
      linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.35) 8%, #000 22%) !important;
    -webkit-mask-composite:source-in !important;
    mask-image:
      linear-gradient(to right, transparent 0%, rgba(0,0,0,.18) 8%, #000 25%),
      linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.35) 8%, #000 22%) !important;
    mask-composite:intersect !important;
  }

  /* Mobile subpage heroes also use fluid sizing */
  body:not(.legal-page) .page-hero{
    min-height:clamp(430px, 52svh, 620px) !important;
    padding-top:clamp(115px, 15svh, 150px) !important;
    padding-bottom:clamp(42px, 7svh, 70px) !important;
  }

  body:not(.legal-page) .page-hero h1{
    font-size:clamp(38px, 10vw, 54px) !important;
  }

  body:not(.legal-page) .page-hero p{
    font-size:clamp(13px, 3.5vw, 15px) !important;
  }

  /* Legal hero scales from the same viewport logic */
  .legal-page .page-hero{
    min-height:clamp(500px, 64svh, 720px) !important;
  }

  .legal-page .legal-hero-copy{
    top:clamp(135px, 18svh, 180px) !important;
    width:min(90vw, 500px) !important;
  }

  .legal-page .legal-hero-wordmark{
    width:min(70vw, 310px) !important;
  }

  .legal-page .legal-hero-copy h1{
    font-size:clamp(38px, 10vw, 50px) !important;
  }

  .legal-page .legal-hero-copy p:last-child{
    max-width:min(80vw, 300px) !important;
    font-size:clamp(11.5px, 3.2vw, 13px) !important;
  }
}

/* ===== V28 — SEO semantics only; no hero visual changes ===== */
.sr-only{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}
.footer-heading{
  font:inherit;
  font-size:12px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--champagne);
  margin:0 0 16px;
}
.cookie-title{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(24px,3vw,34px);
  line-height:1.12;
  margin:0 0 12px;
}

/* ===== V29 — storytelling + digital brand guide + vCard manager ===== */
.brand-sequence{padding:120px 0;background:#0B0B0A}
.sequence-row{
  display:grid;grid-template-columns:1.2fr .8fr;gap:7vw;align-items:end;
  padding:58px 0;border-top:1px solid rgba(169,141,98,.23)
}
.sequence-row:last-child{border-bottom:1px solid rgba(169,141,98,.23)}
.sequence-word{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(54px,7vw,108px);line-height:.95;color:var(--ivory)
}
.sequence-row p{margin:0;color:#BEB7AB;max-width:520px;font-size:17px;line-height:1.75}

.brand-guide{background:var(--stone)}
.brand-guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(169,141,98,.22);margin-top:55px}
.brand-guide-grid article{background:#D8D0C3;padding:42px;min-height:280px}
.brand-guide-no{font-family:Georgia,serif;color:var(--champagne);font-size:15px}
.brand-guide-grid h3{font-family:Georgia,serif;font-size:30px;font-weight:400;margin:45px 0 18px}
.brand-guide-grid p{margin:0;line-height:1.72;color:#4A433A}

.vcard-page{min-height:100vh;background:#0B0B0A;color:var(--ivory);padding:34px}
.vcard-shell{width:min(760px,100%);margin:auto;border:1px solid rgba(169,141,98,.46);padding:46px;background:#11100E}
.vcard-brand{display:flex;align-items:center;gap:14px;margin-bottom:42px}
.vcard-brand img:first-child{width:48px}.vcard-brand img:last-child{width:165px}
.vcard-photo{width:132px;height:132px;border-radius:50%;object-fit:cover;border:1px solid rgba(169,141,98,.5);margin-bottom:24px}
.vcard-page h1{font-family:Georgia,serif;font-size:42px;font-weight:400;margin:0 0 7px}
.vcard-role{color:var(--champagne);letter-spacing:.09em;text-transform:uppercase;font-size:12px;margin-bottom:30px}
.vcard-links{display:grid;gap:10px;margin-top:26px}
.vcard-links a{border:1px solid rgba(169,141,98,.35);padding:13px 15px;color:var(--ivory)}
.vcard-download{display:inline-block;margin-top:28px;padding:14px 18px;border:1px solid var(--champagne);color:var(--ivory)}
.admin-wrap{max-width:1100px;margin:40px auto;padding:0 24px}
.admin-card{background:#F1ECE3;border:1px solid #D4CBBD;padding:26px;margin-bottom:22px}
.admin-card h2{font-family:Georgia,serif;font-weight:400}
.admin-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.admin-field label{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}
.admin-field input,.admin-field textarea{width:100%;padding:11px;border:1px solid #BEB4A6;background:#fff;font:inherit}
.admin-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.admin-btn{padding:11px 15px;border:1px solid #8D7651;background:#11100E;color:#fff;cursor:pointer}
.admin-table{width:100%;border-collapse:collapse}
.admin-table th,.admin-table td{padding:12px;border-bottom:1px solid #D4CBBD;text-align:left}
@media(max-width:900px){
 .sequence-row{grid-template-columns:1fr;gap:22px;padding:42px 0}
 .sequence-word{font-size:clamp(44px,13vw,70px)}
 .brand-guide-grid{grid-template-columns:1fr}
 .admin-grid{grid-template-columns:1fr}
 .vcard-page{padding:16px}.vcard-shell{padding:28px 20px}
}
