/* 02 — structural layout */
@layer layout {
  .ibn-thani-header{position:relative;margin-block:.65rem 1rem;padding:.4rem;border:2px solid transparent;border-radius:calc(var(--ibn-radius-lg) + .2rem);background:linear-gradient(160deg,#0b3159,#03152b 58%,#061c36) padding-box,linear-gradient(115deg,#684207,#f8dc83 18%,var(--ibn-header-gold,var(--ibn-gold-2)) 42%,#fff1ad 55%,#a56e12 82%,#4d3005) border-box;box-shadow:0 1px 0 rgba(255,255,255,.34) inset,0 -3px 0 rgba(1,11,23,.75) inset,0 10px 18px rgba(3,17,34,.22),0 26px 58px rgba(3,17,34,.2);isolation:isolate}
  .ibn-thani-header::before{content:"";position:absolute;z-index:-1;inset:.16rem;border-radius:inherit;box-shadow:0 2px 0 rgba(255,246,190,.38) inset,0 -6px 12px rgba(0,0,0,.32) inset;pointer-events:none}
  .ibn-thani-brand-panel{position:relative;display:grid;place-items:center;min-block-size:var(--ibn-header-height);overflow:clip;border:1px solid rgba(255,224,132,.38);border-radius:calc(var(--ibn-radius-lg) - .18rem);background:radial-gradient(circle at 50% 0%,rgba(42,103,160,.38),transparent 55%),var(--ibn-header-blue,var(--ibn-navy));box-shadow:0 2px 0 rgba(255,255,255,.12) inset,0 -8px 20px rgba(0,0,0,.3) inset}
  .ibn-thani-brand-panel.has-header-image::before{content:"";position:absolute;inset:.18rem;border-radius:calc(var(--ibn-radius-lg) - .4rem);background:var(--ibn-header-image) center/cover no-repeat;filter:saturate(1.06) contrast(1.04);transform:scale(1.01)}
  .ibn-thani-brand-panel::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,19,39,calc(var(--ibn-header-overlay) * .78)),rgba(2,19,39,var(--ibn-header-overlay))),linear-gradient(115deg,rgba(255,224,132,.1),transparent 34%,rgba(4,31,61,.16));box-shadow:0 0 0 1px rgba(255,246,190,.12) inset}
  .ibn-thani-brand-panel__inner{position:relative;z-index:1;display:grid;justify-items:center;gap:.22rem;inline-size:min(92%,58rem);padding:.85rem;text-align:center}
  .ibn-thani-brand-logo img{max-block-size:2.55rem;inline-size:auto}
  .ibn-thani-brand-title{margin:0;font-size:clamp(1.75rem,1.3rem + 1.35vw,var(--ibn-header-title-size));line-height:1.08;font-weight:850;text-wrap:balance}
  .ibn-thani-brand-title a{color:var(--ibn-gold-2);text-shadow:0 1px 0 #fff1ae,0 3px 0 rgba(76,45,0,.72),0 10px 24px rgba(0,0,0,.38)}
  .ibn-thani-brand-tagline{max-inline-size:52rem;margin:0;color:var(--ibn-on-dark);font-size:var(--ibn-text-sm);line-height:1.5;font-weight:650;text-wrap:pretty}
  .ibn-thani-nav{margin-block-start:.32rem;padding:.18rem;border:1px solid var(--ibn-border-strong);border-radius:var(--ibn-radius-sm);background:var(--ibn-nav-background,#082746)}
  .ibn-thani-nav .wp-block-navigation__container{gap:.1rem;justify-content:center}
  .ibn-thani-nav a,.ibn-thani-nav a:visited,.ibn-thani-nav .wp-block-navigation-item__content,.ibn-thani-nav .wp-block-navigation-item__content:visited{display:inline-grid;place-items:center;min-block-size:2rem;padding:.34rem .72rem;border-radius:.58rem;color:var(--ibn-nav-text,#fff9e8);font-size:var(--ibn-nav-size,var(--ibn-text-sm));line-height:1.15;font-weight:780}
  .ibn-thani-nav a:is(:hover,:focus-visible),.ibn-thani-nav .current-menu-item>a,.ibn-thani-nav .current-menu-ancestor>a{color:#10243f;background:var(--ibn-gold-2)}
  .ibn-thani-nav .wp-block-navigation__responsive-container-open,.ibn-thani-nav .wp-block-navigation__responsive-container-close{color:#fff9e8}
  .ibn-thani-nav .wp-block-navigation__responsive-container.is-menu-open{z-index:9999;padding:1.5rem var(--ibn-gutter);background:var(--ibn-navy)}

  .ibn-ultra{padding-block-end:2rem}
  .ibn-ultra-hero{margin-block-end:.55rem}
  .ibn-ultra-ambient{display:none}
  .ibn-ultra-command{inline-size:100%;margin-block-end:.75rem;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}
  .ibn-ultra-command__track{display:flex;justify-content:center;gap:.42rem;min-inline-size:max-content;padding:.12rem .1rem .35rem}

  .ibn-ultra-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(var(--ibn-sidebar-min),var(--ibn-sidebar-max));grid-template-areas:"feed side";gap:clamp(.9rem,1.5vw,1.25rem);align-items:start}
  .ibn-ultra-feed{grid-area:feed;min-inline-size:0}
  .ibn-ultra-side{grid-area:side;min-inline-size:0}
  .ibn-ultra-side__stack{display:grid;gap:.7rem;inline-size:100%}
  .ibn-ultra-title{margin:0 0 .45rem}
  .ibn-ultra-title h2{margin:0;color:var(--ibn-navy);font-size:var(--ibn-text-xl);line-height:1.2;font-weight:850}
  .ibn-ultra-mosaic{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.72rem;align-items:start}
}
