/* ==========================================================
   PNEL9 · WIDTH / EDITORIAL / GEO · 25-08-2026
   Last brand sheet. It fixes presentation only; Marga remains data owner.
   ========================================================== */

/* 1 · Marga tabs. JS marks every inherited Colibri wrapper around the real
   tabs so h-col-lg-6 / 8, inline flex-basis and max-width cannot halve them. */
body.pnel-brand.vmon-marga-page .md-template .pnel9-trip-tabs-shell{
  width:100%!important;max-width:none!important;min-width:0!important;
  margin-left:0!important;margin-right:0!important;float:none!important;
  flex-basis:100%!important;box-sizing:border-box!important
}
body.pnel-brand.vmon-marga-page .md-template .h-column.pnel9-trip-tabs-shell,
body.pnel-brand.vmon-marga-page .md-template .h-column-container.pnel9-trip-tabs-shell{
  flex:0 0 100%!important
}
body.pnel-brand.vmon-marga-page .md-template .h-row.pnel9-trip-tabs-shell{
  display:block!important
}
body.pnel-brand.vmon-marga-page .pnel9-trip-tabs,
body.pnel-brand.vmon-marga-page .pnel9-trip-tabs :where(.h-tabs-navigation,.h-tabs-content,.h-tabs-item-content,.pnel9-trip-tab-panel){
  width:100%!important;max-width:none!important;min-width:0!important;box-sizing:border-box!important
}
body.pnel-brand.vmon-marga-page .pnel9-trip-tab-panel> :where(.w-100,.container,.container-fluid){
  width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important
}
body.pnel-brand.vmon-marga-page .pnel9-trip-tab-panel :where(table,figure,.wp-block-image,img){max-width:100%!important}

/* 2 · Editorial legacy. A real wide canvas, not a 700 px article floating in
   a desktop monitor. Existing content and uploaded images are untouched. */
body.pnel-brand.pnel9.lap-direct-editorial .lap-reading--page>.vmon-shell,
body.pnel-brand.pnel9.lap-direct-editorial .lap-reading--article>.vmon-shell,
body.pnel-brand.pnel9 .pnel8-reading>.vmon-shell{
  width:min(1320px,calc(100% - 56px))!important;max-width:1320px!important;margin-inline:auto!important
}
body.pnel-brand.pnel9 .pnel8-story-section,
body.pnel-brand.pnel9 .pnel8-story-section__grid,
body.pnel-brand.pnel9 .pnel8-story-section__copy{width:100%;max-width:none;min-width:0}
body.pnel-brand.pnel9 .pnel8-story-section:not(.has-media) .pnel8-story-section__copy{max-width:1160px}
body.pnel-brand.pnel9 .pnel8-story-section.has-media .pnel8-story-section__grid{
  grid-template-columns:minmax(0,1.25fr) minmax(300px,.65fr);gap:clamp(34px,4.5vw,72px)
}
body.pnel-brand.pnel9 .pnel8-story-section__media :where(figure,.lap-inline-image){width:100%!important;max-width:none!important}
body.pnel-brand.pnel9 .pnel8-story-section__media img{width:100%!important;max-width:none!important;height:auto!important;object-fit:contain!important}

/* 3 · Justification is typography, not ideology. Long prose is justified only
   where the line is wide enough. UI, headings, cards, FAQs and mobile stay left. */
@media(min-width:821px){
  body.pnel-brand.pnel9.lap-direct-editorial .lap-reading :where(.lap-reading__prose,.lap-content-card__body,.lap-editorial-tail,.pnel8-story-section__copy) :where(p,li,dd,blockquote),
  body.pnel-brand.pnel9.vmon-marga-page .h-tabs-item-content :where(p,li,dd,blockquote){
    text-align:justify!important;text-justify:inter-word;hyphens:auto!important
  }
}
@media(max-width:820px){
  body.pnel-brand.pnel9.lap-direct-editorial .lap-reading :where(p,li,dd,blockquote),
  body.pnel-brand.pnel9 .pnel8-story-section__copy :where(p,li,dd,blockquote),
  body.pnel-brand.pnel9.vmon-marga-page .h-tabs-item-content :where(p,li,dd,blockquote){
    text-align:left!important;text-justify:auto!important;hyphens:none!important
  }
  body.pnel-brand.pnel9.lap-direct-editorial .lap-reading--page>.vmon-shell,
  body.pnel-brand.pnel9.lap-direct-editorial .lap-reading--article>.vmon-shell,
  body.pnel-brand.pnel9 .pnel8-reading>.vmon-shell{width:min(100% - 28px,1320px)!important}
  body.pnel-brand.pnel9 .pnel8-story-section.has-media .pnel8-story-section__grid{grid-template-columns:1fr!important;gap:26px!important}
  body.pnel-brand.pnel9 .pnel8-story-section.has-media.is-reverse .pnel8-story-section__copy,
  body.pnel-brand.pnel9 .pnel8-story-section.has-media.is-reverse .pnel8-story-section__media{order:initial!important}
}
body.pnel-brand.pnel9 :where(h1,h2,h3,h4,h5,h6,button,.vmon-button,.pnel-button,summary,label,input,textarea,select,figcaption,.wp-caption-text,.pnel-tariff-card){text-align:left;text-justify:auto;hyphens:none}

/* 4 · Contextual GEO for legacy/editorial pages. Visible content == schema. */
body.pnel-brand.pnel9 .pnel9-geo{padding:clamp(54px,7vw,92px) 0;border-top:1px solid #ded9d1;background:#f5f2ed}
body.pnel-brand.pnel9 .pnel9-geo__grid{display:grid;grid-template-columns:minmax(260px,.62fr) minmax(0,1.38fr);gap:clamp(38px,7vw,96px);align-items:start}
body.pnel-brand.pnel9 .pnel9-geo header{position:sticky;top:118px}
body.pnel-brand.pnel9 .pnel9-geo header h2{max-width:540px;margin:12px 0 16px;color:#111;font-size:clamp(2.1rem,4vw,4.5rem);line-height:.94;letter-spacing:-.055em}
body.pnel-brand.pnel9 .pnel9-geo header>p:last-child{max-width:480px;margin:0;color:#625d57;line-height:1.65}
body.pnel-brand.pnel9 .pnel9-geo__faq{border-top:1px solid #cbc5bc}
body.pnel-brand.pnel9 .pnel9-geo__faq details{border-bottom:1px solid #cbc5bc}
body.pnel-brand.pnel9 .pnel9-geo__faq summary{position:relative;padding:22px 46px 22px 0;cursor:pointer;list-style:none;color:#111;font-size:clamp(1rem,1.35vw,1.22rem);font-weight:800;line-height:1.28}
body.pnel-brand.pnel9 .pnel9-geo__faq summary::-webkit-details-marker{display:none}
body.pnel-brand.pnel9 .pnel9-geo__faq summary:after{content:"+";position:absolute;right:4px;top:19px;color:var(--pnel-red);font-size:1.55rem;font-weight:500}
body.pnel-brand.pnel9 .pnel9-geo__faq details[open] summary:after{content:"−"}
body.pnel-brand.pnel9 .pnel9-geo__faq details>div{padding:0 42px 24px 0}
body.pnel-brand.pnel9 .pnel9-geo__faq p{max-width:820px;margin:0;color:#4a4540;font-size:1rem;line-height:1.72;text-align:left!important;hyphens:none!important}
@media(max-width:860px){
  body.pnel-brand.pnel9 .pnel9-geo__grid{grid-template-columns:1fr;gap:28px}
  body.pnel-brand.pnel9 .pnel9-geo header{position:static}
}
