
/* CONSTANZA / V8 — editorial corrections requested after review */
:root{--v8-rule:rgba(86,56,68,.15)}
/* hero: lighter composition and original image kept intact */
.hero{grid-template-columns:minmax(0,50.5%) minmax(0,49.5%);height:min(900px,100svh)}
.hero-text{padding-top:34px;padding-bottom:28px}
.hero h1{font-size:clamp(38px,3.95vw,59px);line-height:1.02;letter-spacing:-.052em;max-width:690px;margin-bottom:18px;font-weight:400}
.hero-title-line,.hero-title-light,.hero-title-soft{display:block}
.hero-title-soft{font-size:.84em;line-height:.98;font-style:italic;font-weight:300;color:#b55673;letter-spacing:-.03em;margin:.06em 0 .08em}
.hero-title-light{font-weight:360}
.hero .hero-intro{max-width:470px}
.hero-photo-wrap{display:flex;align-items:center;justify-content:center;background:#f3f0ec;overflow:hidden}
.hero-photo-wrap img{width:100%;height:100%;object-fit:contain;object-position:center center;filter:none!important}
.hero-photo-wrap::after{content:none!important}

/* section heading alignment */
.section-head{align-items:start;grid-template-columns:96px minmax(0,1fr) minmax(0,250px)}
.section-head>div{padding-top:0}
.section-num{padding-top:0;line-height:1;display:block;margin-top:2px}
.overline{line-height:1.1;margin-bottom:16px}
.section-head>p{margin-top:0;align-self:start;padding-top:2px}

/* benefits: align content under the headline block */
.benefits .benefit-grid{margin-left:96px;width:calc(100% - 96px)}
.benefits .benefit-pane,.benefits .benefit-pane+.benefit-pane{padding-top:28px!important}
.benefits .benefit-pane h3{margin-top:14px}

/* practical map: compact instead of oversized */
.practical-map-compact{max-width:min(100%,760px);margin:26px 0 0 auto;padding-top:30px}
.practical-map-compact .map-editorial-header{padding-top:18px}
.practical-map-compact .map-frame{margin-top:18px;height:240px;aspect-ratio:auto;max-width:760px}
.practical-map-compact .map-precision{max-width:54ch}

/* certifications as banners */
.about-credentials{margin-top:72px}
.about-credentials-head{margin-bottom:20px}
.credentials-banners{display:flex;flex-direction:column;gap:10px}
.credential-banner,.credential-row.credential-banner,.credential-row.credential-banner:last-child{grid-column:auto;display:grid;grid-template-columns:64px minmax(0,1.25fr) minmax(200px,.85fr);align-items:center;gap:0 24px;padding:20px 24px;border:1px solid var(--v8-rule)!important;background:#fbf6f3!important;min-height:0;transition:background .25s ease,transform .25s ease}
.credential-banner:hover{padding-left:24px;transform:translateY(-1px);background:#f9f1ed!important}
.credential-banner .credential-index{grid-row:auto;font:italic 22px/1 var(--serif);align-self:center}
.credential-banner h3{margin:0;font:clamp(23px,2vw,31px)/1.15 var(--serif)}
.credential-banner p{margin:0;text-align:right;font-size:14px;line-height:1.45}

@media(max-width:1120px){
  .hero h1{font-size:clamp(36px,4vw,51px);max-width:620px}
  .benefits .benefit-grid{margin-left:78px;width:calc(100% - 78px)}
  .section-head{grid-template-columns:78px minmax(0,1fr) minmax(0,220px)}
}
@media(max-width:790px){
  .hero{display:flex;flex-direction:column;height:auto}
  .hero-text{order:1;padding-top:42px;padding-bottom:30px}
  .hero-photo-wrap{order:2;height:auto;min-height:0;padding:0}
  .hero-photo-wrap img{height:auto;max-height:none}
  .section-head{grid-template-columns:70px minmax(0,1fr)}
  .section-head>p{grid-column:2}
  .benefits .benefit-grid{margin-left:0;width:100%}
  .practical-map-compact{max-width:100%;margin-left:0}
  .practical-map-compact .map-frame{height:220px}
  .credential-banner,.credential-row.credential-banner,.credential-row.credential-banner:last-child{grid-template-columns:42px minmax(0,1fr);padding:18px 18px}
  .credential-banner p{text-align:left;margin-top:6px}
}
@media(max-width:600px){
  .hero h1{font-size:clamp(34px,10vw,48px)}
  .hero-title-soft{font-size:.82em}
  .section-head{grid-template-columns:56px minmax(0,1fr)}
  .practical-map-compact .map-frame{height:200px}
}
