/* D'Or Group – design polish (Manrope) · 2026-10-30 */
html body{font-family:var(--font-body);font-feature-settings:"ss01" on,"cv11" on;text-rendering:optimizeLegibility}
html body button,html body input,html body select,html body textarea,html body .btn{font-family:var(--font-body)}

/* Headings: Manrope needs more weight + tighter tracking than the old serif */
html body h1,html body h2,html body h3,html body h4,
html body .h2,html body .h3,html body .stat-value,
html body [class*="-h2"],html body [class*="-h3"],html body [class*="title"]:not(title){
  font-family:var(--font-head);font-weight:500;letter-spacing:-0.025em}
html body h1{font-weight:500;letter-spacing:-0.035em;line-height:1.02}
html body .stat-value{font-weight:400;letter-spacing:-0.04em}
html body .kicker,html body [class*="kicker"],html body [class*="eyebrow"]{font-weight:600;letter-spacing:0.16em}

/* Body copy: a touch more contrast and comfortable rhythm */
html body p{line-height:1.7}
html body .lead,html body .p-lg{font-weight:400;color:inherit;opacity:.88}

/* Buttons: one consistent pill style */
html body .btn{font-weight:600;letter-spacing:0.08em;transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s ease}
html body .btn:hover{transform:translateY(-1px)}

/* Hero: photo + readable gradient */
html body .hero .hero-bg{animation:dorHeroZoom 18s ease-out both}
html body .hero--photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,10,.62) 0%,rgba(10,10,10,.35) 45%,rgba(10,10,10,.05) 75%),linear-gradient(180deg,rgba(10,10,10,.40) 0%,rgba(10,10,10,0) 30%,rgba(10,10,10,.55) 100%);pointer-events:none}
html body .hero--photo .hero-inner{position:relative;z-index:2}
@keyframes dorHeroZoom{from{transform:scale(1.08)}to{transform:scale(1.02)}}
@media (prefers-reduced-motion:reduce){html body .hero .hero-bg{animation:none}}

/* Tighter vertical rhythm – removes the big empty gaps */
html body .section{padding-top:clamp(56px,7vw,96px);padding-bottom:clamp(56px,7vw,96px)}
html body .section + .section{padding-top:clamp(32px,4vw,64px)}

/* Images & cards */
html body img{max-width:100%;height:auto}
html body .nv-card-img img,html body .nv-feat-img img{transition:transform .6s ease}
html body .nv-card:hover .nv-card-img img,html body .nv-feat:hover .nv-feat-img img{transform:scale(1.04)}

/* Footer */
html body .footer-elegant-mark{font-family:var(--font-head);font-weight:600;letter-spacing:0.18em}
html body .footer-elegant-address{margin-top:10px;font-size:13px;opacity:.7;line-height:1.6}
html body .footer-elegant-address a{color:inherit;text-decoration:none;border-bottom:1px solid currentColor}

@media (max-width:720px){
  html body h1{font-size:clamp(38px,11vw,52px)}
  html body .hero{min-height:82vh}
}
/* Image break (was missing its styles) */
html body .section--imagebreak{padding-top:0;padding-bottom:0}
html body .imagebreak{position:relative;min-height:clamp(420px,62vh,640px);display:flex;align-items:flex-end;overflow:hidden;color:#fff;background:#0f0f10}
html body .imagebreak-media{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.03)}
html body .imagebreak-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,10,.10) 0%,rgba(10,10,10,.25) 45%,rgba(10,10,10,.72) 100%)}
html body .imagebreak-inner{position:relative;z-index:2;padding-top:72px;padding-bottom:clamp(48px,6vw,80px)}
html body .imagebreak .kicker,html body .imagebreak .h2,html body .imagebreak .p,html body .h2--light,html body .p--light{color:#fff}
html body .imagebreak .h2{max-width:16ch;font-size:clamp(32px,4.4vw,60px);line-height:1.04;margin:10px 0 14px}
html body .imagebreak .p{max-width:52ch;opacity:.85}
html body .imagebreak-lines{display:flex;gap:8px;margin-top:22px}
html body .imagebreak-lines span{display:block;width:32px;height:1px;background:rgba(255,255,255,.6)}

/* Brand rows: copy centred next to the logo tile, no empty top gap */
html body .brand-row{align-items:center}
html body .brand-copy{padding-top:0;align-self:center}
html body .brand-title{font-size:clamp(30px,3.4vw,46px);margin:8px 0 0}
html body .brand-media{border-radius:6px;overflow:hidden}
html body .hero--photo .lead{opacity:.95;text-shadow:0 1px 18px rgba(0,0,0,.35)}
/* Readable text on ALL photo heroes (about, team, careers, brand pages…) */
html body .hero:has(.hero-bg)::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(90deg,rgba(10,10,10,.70) 0%,rgba(10,10,10,.42) 45%,rgba(10,10,10,.08) 80%),linear-gradient(180deg,rgba(10,10,10,.45) 0%,rgba(10,10,10,0) 30%,rgba(10,10,10,.60) 100%)}
html body .hero .hero-inner,html body .hero .container{position:relative;z-index:2}
html body .hero h1,html body .hero .kicker,html body .hero .lead,html body .hero p{color:#fff;text-shadow:0 1px 20px rgba(0,0,0,.35)}
@media (max-width:720px){html body .hero:has(.hero-bg)::after{background:linear-gradient(180deg,rgba(10,10,10,.45) 0%,rgba(10,10,10,.35) 40%,rgba(10,10,10,.78) 100%)}}
/* Remaining light (300) headings → consistent Manrope 500 */
html body .a-h,html body .s-h,html body .h2,html body .dor-mobile-menu__link{font-weight:500 !important;letter-spacing:-0.02em}
/* Cookie notice */
.dg-cc{position:fixed;left:16px;right:16px;bottom:16px;z-index:9999;display:none}
.dg-cc.on{display:block;animation:dgUp .35s ease both}
@keyframes dgUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.dg-cc-in{max-width:920px;margin:0 auto;background:#111;color:#f6f5f3;border-radius:14px;padding:20px 22px;display:flex;gap:20px;align-items:center;box-shadow:0 18px 50px rgba(0,0,0,.3);font-family:var(--font-body)}
.dg-cc-in strong{display:block;font-weight:600;font-size:15px;margin-bottom:4px;letter-spacing:-.01em}
.dg-cc-in p{margin:0;font-size:13.5px;line-height:1.6;opacity:.82}
.dg-cc-in a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.dg-cc-ok{flex:none;font:600 12px/1 var(--font-body);letter-spacing:.1em;text-transform:uppercase;padding:14px 22px;border-radius:999px;border:0;background:#f6f5f3;color:#111;cursor:pointer}
@media (max-width:720px){.dg-cc{left:10px;right:10px;bottom:10px}.dg-cc-in{flex-direction:column;align-items:stretch}.dg-cc-ok{width:100%}}
/* Legal pages */
html body .dg-legal{max-width:820px}
html body .dg-legal-sec{padding:0 0 32px;margin:0 0 32px;border-bottom:1px solid var(--line)}
html body .dg-legal-sec:last-child{border-bottom:0}
html body .dg-legal-sec h2{margin:6px 0 14px}
html body .dg-legal-sec p,html body .dg-legal-sec li{font-size:16px;line-height:1.75}
html body .dg-legal-sec ul{padding-left:20px;margin:0 0 14px}
html body .dg-legal-sec li{margin:6px 0}
html body .dg-legal-sec a{color:inherit;text-decoration:underline;text-underline-offset:3px}
html body .dg-form-privacy{font-size:13px;line-height:1.6;opacity:.7;margin:14px 0 0}
html body .dg-form-privacy a{color:inherit;text-decoration:underline}