/* ==========================================================================
   RN Page Shell V1 — one global content column for natega4dk.net
   Header bar + footer bar stay full-bleed; INNER content shares:
     max-width: var(--rn-page-max)   (1200px)
     padding-inline: var(--rn-page-gutter)  (16px mobile / 24px desktop)
   Do not load on thanwya. / nateja. / iraq / libya / syria.
   ========================================================================== */

:root{
  --rn-page-max:1200px;
  --rn-page-gutter:16px;
  /* Align leftover calc() shells that still read the old tokens */
  --rn-shell-max-v183:var(--rn-page-max);
  --rn-shell-side-v183:var(--rn-page-gutter);
  --rn-final-shell-max-v15:var(--rn-page-max);
  --rn-final-shell-side-v15:var(--rn-page-gutter);
  --rn-final-inner-v15:0px;
  --rn-page-max-v128:var(--rn-page-max);
  --rn-page-side-v128:0px;
}
@media (min-width:768px){
  :root{
    --rn-page-gutter:24px;
    --rn-shell-side-v183:var(--rn-page-gutter);
    --rn-final-shell-side-v15:var(--rn-page-gutter);
  }
}

html{
  overflow-x:hidden;
}

html body{
  overflow-x:hidden;
  max-width:100%;
}

/* --------------------------------------------------------------------------
   Inner shells: header inner, main container, footer inners
   -------------------------------------------------------------------------- */
html body #rnSiteHeaderFixedBarV305 .rn-site-header-inner-v183,
html body .rn-site-header-inner-v183,
html body .navbar > .container,
html body .navbar-inverse > .container,
html body .navbar.navbar-inverse > .container,
html body #ww > .container,
html body #ww > .container:has(#results-list),
html body .rn-site-footer-container-v183,
html body .rn-footer-container-v126{
  width:100% !important;
  max-width:var(--rn-page-max) !important;
  margin-left:auto !important;
  margin-right:auto !important;
  margin-inline:auto !important;
  padding-left:var(--rn-page-gutter) !important;
  padding-right:var(--rn-page-gutter) !important;
  padding-inline:var(--rn-page-gutter) !important;
  box-sizing:border-box !important;
}

/* Footer popular band: full-bleed background, children share the column */
html body .rn-site-footer-popular-v183,
html body .rn-footer-popular-v126{
  padding-left:0 !important;
  padding-right:0 !important;
  padding-inline:0 !important;
}
html body .rn-site-footer-popular-v183 h2,
html body .rn-footer-popular-v126 h2,
html body .rn-site-footer-popular-list-v183,
html body .rn-footer-popular-list-v126{
  width:100% !important;
  max-width:var(--rn-page-max) !important;
  margin-left:auto !important;
  margin-right:auto !important;
  margin-inline:auto !important;
  padding-left:var(--rn-page-gutter) !important;
  padding-right:var(--rn-page-gutter) !important;
  padding-inline:var(--rn-page-gutter) !important;
  box-sizing:border-box !important;
}

/* Footer bottom bar: keep full-bleed bg, inset content to the same column */
html body .rn-site-footer-bottom-v183,
html body .rn-footer-bottom-v126{
  padding-left:max(var(--rn-page-gutter), calc((100% - var(--rn-page-max)) / 2)) !important;
  padding-right:max(var(--rn-page-gutter), calc((100% - var(--rn-page-max)) / 2)) !important;
  padding-inline:max(var(--rn-page-gutter), calc((100% - var(--rn-page-max)) / 2)) !important;
  box-sizing:border-box !important;
}

/* --------------------------------------------------------------------------
   Bootstrap row/col inside the page container must not add a second gutter
   -------------------------------------------------------------------------- */
html body #ww > .container > .row,
html body .navbar > .container > .row{
  margin-left:0 !important;
  margin-right:0 !important;
  margin-inline:0 !important;
}
html body #ww > .container > .row > [class*="col-"]{
  padding-left:0 !important;
  padding-right:0 !important;
  padding-inline:0 !important;
}

/* Homepage :has(#results-list) used to explode the container to 100vw */
html body #ww > .container:has(#results-list),
html body .container:has(#results-list){
  width:100% !important;
  max-width:var(--rn-page-max) !important;
  margin-inline:auto !important;
  padding-inline:var(--rn-page-gutter) !important;
  box-sizing:border-box !important;
}

/* --------------------------------------------------------------------------
   Module wrappers that currently pick their own page width.
   Sit inside the parent column: fill it, do not add extra side inset.
   Keep each module's INTERNAL padding (cards, heroes, tables).
   -------------------------------------------------------------------------- */
html body .rn-result-gateway-v1,
html body .rn-result-gateway-v1.no-print,
html.rn-result-listing-v1 .rn-modern-v211,
html.rn-result-listing-v1 body .rn-modern-v211,
html body .rn-edarat-gateway-grid-v1,
html body .rn-edara-toppers-v1-shell,
html body #ww section.rn-search-pro,
html body #ww .container .rn-search-pro,
html body #ww .rn-search-pro,
html body #rnGovPrimaryServicesV308,
html body nav.rn-gov-primary-services-v308,
html body .rn-degree-distribution,
html body .rn-v113-content-zone,
html body .rn-edara-mid-section,
html body .rn-result-term-message,
html body .rn-gov-analytics,
html body .rn-gov-toppers,
html body .rn-ga-hero,
html body .rn-gt-table-view,
html body .rn-ng-results-section#results-list,
html body .rn-edara-section,
html body .rn-top-edara-section,
html body .rn-governorate-editorial-box-v320,
html body .rn-gov-fallback-v185,
html body .rn-gov-quick-info-v113,
html body .rn-gov-services-v113,
html body .rn-gov-primary-services-v308,
html body .rn-form-links{
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
  margin-inline:0 !important;
  box-sizing:border-box !important;
}

/* These wrappers used width:calc(100vw - N) / calc(100% - N) as a fake gutter */
html body .rn-result-gateway-v1,
html.rn-result-listing-v1 .rn-modern-v211,
html.rn-result-listing-v1 body .rn-modern-v211,
html body .rn-edara-toppers-v1-shell{
  padding-left:0 !important;
  padding-right:0 !important;
  padding-inline:0 !important;
}

/* Gateway mobile used 100vw and escaped the column */
@media (max-width:760px){
  html body .rn-result-gateway-v1{
    width:100% !important;
    max-width:none !important;
  }
}
@media (max-width:700px){
  html body #rnSiteHeaderFixedBarV305 .rn-site-header-inner-v183,
  html body .rn-site-header-inner-v183,
  html body #ww > .container,
  html body .navbar > .container{
    width:100% !important;
    max-width:var(--rn-page-max) !important;
  }
}

/* Edara directory used calc(100% - 24px) + max-width 1120px */
html body .rn-edarat-gateway-grid-v1{
  width:100% !important;
  max-width:none !important;
}

/* Search form brand (1400px) + primary service cards (1400px) */
html body #ww section.rn-search-pro,
html body #ww .container .rn-search-pro,
html body #ww .rn-search-pro,
html body section.rn-search-pro.rn-nf,
html body #rnGovPrimaryServicesV308,
html body nav.rn-gov-primary-services-v308{
  width:100% !important;
  max-width:none !important;
}

/* --------------------------------------------------------------------------
   Ads: stay inside the column; never 100vw overflow
   -------------------------------------------------------------------------- */
html body > div.a3lannnaa,
html body > div.a3lannnaa > div.a3lant7t,
html body div.a3lant7t,
html body .rn-v260-site-after-header{
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
}
html body .rn-v260-site-after-header .rn-v260-ad-body,
html body .rn-v260-site-after-header ins.adsbygoogle,
html body #ww ins.adsbygoogle{
  max-width:100% !important;
  box-sizing:border-box !important;
}

/* Wide tables scroll inside the column instead of stretching the page */
html body .rn-degree-table-wrap,
html body .rn-et-table,
html body .rn-gt-table-card{
  max-width:100%;
}

@media print{
  html,
  html body{
    overflow:visible !important;
  }
}
