
/* GRAND UNIFIED DESIGN — consistent outer frames, typographic hierarchy, no forced scrolling */
:root{--frame:1280px;--pad:clamp(18px,3.1vw,42px);--gold:#d7b77d;--ink:#080f18;--panel:#101e2d;--edge:rgba(219,184,120,.34)}
html{scroll-padding-top:20px}body{background:#080f18!important;color:#f7f0e4!important;font-size:16px!important;line-height:1.7!important}
.shell{width:min(calc(100% - 48px),var(--frame))!important;max-width:var(--frame)!important;margin-inline:auto!important;padding-left:0!important;padding-right:0!important}
/* Every principal section shares one centered frame, without full-bleed mismatches */
main>section:not(#home),main>section.section,main>section.lx-section,main>section.nat-new-showcase,
main>section.nat-trust-section,main>section.fare-booking{
 width:min(calc(100% - 48px),var(--frame))!important;max-width:var(--frame)!important;
 margin:32px auto!important;padding:clamp(48px,5.2vw,84px) var(--pad)!important;
 border:1px solid var(--edge)!important;border-radius:22px!important;
 background:linear-gradient(145deg,#122233 0%,#0a1522 56%,#09111b 100%)!important;
 box-shadow:0 28px 70px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.04)!important;
 overflow:hidden;box-sizing:border-box!important
}
main>section:not(#home)>.shell{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
/* No section may introduce another horizontal gutter or a conflicting width */
#signature-experience{width:min(calc(100% - 48px),var(--frame))!important;max-width:var(--frame)!important;padding:clamp(48px,5.2vw,84px) var(--pad)!important}
#signature-experience .nat-showcase-cards{width:100%;max-width:none!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
#signature-experience .nat-showcase-card{min-width:0;padding:clamp(22px,2.4vw,38px)!important;border-radius:15px!important;background:linear-gradient(155deg,#1b3044,#0c1826)!important;border:1px solid rgba(225,192,132,.4)!important}
#signature-experience h2{font-size:clamp(38px,4.6vw,65px)!important;line-height:1.12!important}
/* All content titles and grids have a common rhythm */
main>section:not(#home) h2{font-size:clamp(30px,3.3vw,49px)!important;line-height:1.22!important;letter-spacing:-.025em!important}
main>section:not(#home) h3{line-height:1.4!important}
main>section:not(#home) p{line-height:1.8!important}
main>section:not(#home) .sectiontitle,main>section:not(#home) .section-head{margin-bottom:28px!important}
#destinations .grid,#prices .grid{gap:16px!important}
#destinations .tile,#prices .tile{border-radius:13px!important;overflow:hidden;border:1px solid rgba(225,190,126,.35)!important;background:#101e2c!important}
#destinations .tile img{height:clamp(160px,15vw,225px)!important;object-fit:cover}
#why-nat .nat-trust-grid{gap:18px!important}
#why-nat .nat-trust-card{background:#13263a!important;border:1px solid rgba(217,184,120,.3)!important;border-radius:14px!important;padding:28px!important}
#car-gallery{margin:32px auto!important}
#car-gallery .nat-gallery-wrap{width:100%!important;max-width:none!important}
#halal-travel .halal-cards{gap:16px!important}
#booking .fare-panel{width:100%!important;max-width:none!important;margin:0!important;padding:clamp(22px,3.5vw,46px)!important}
#booking .fare-heading{max-width:none!important;width:100%!important}
#booking .fare-booking>.shell,#booking>.shell{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
#booking{scroll-margin-top:24px}
/* Align masthead, banner and social block to the same frame */
.top .shell,.toprow.shell,.navrow.shell{width:min(calc(100% - 48px),var(--frame))!important;max-width:var(--frame)!important}
#home.hero{width:min(calc(100% - 48px),var(--frame))!important;max-width:var(--frame)!important;margin:26px auto 32px!important;border:1px solid var(--edge)!important;border-radius:20px!important;overflow:hidden!important;background:#101e2d!important;box-shadow:0 26px 85px rgba(0,0,0,.36)!important}
#home .nat-new-banner{width:100%!important;height:auto!important;display:block!important;object-fit:contain!important}
.luxury-social.socialbar{width:min(calc(100% - 48px),var(--frame))!important;max-width:var(--frame)!important;margin:32px auto!important;border-radius:20px!important;padding:clamp(24px,3.5vw,48px)!important;background:linear-gradient(145deg,#15283b,#0b1724)!important;border:1px solid var(--edge)!important}
.luxury-social .social-cards{gap:18px!important}.luxury-social .social{min-height:96px!important;padding:20px!important;border-radius:13px!important}
/* Elegant spacing, stronger legibility, refined gold accents */
.nat-new-showcase .nat-showcase-card strong,.nat-new-showcase .nat-showcase-card h3{font-size:clamp(18px,1.6vw,25px)!important}
.nat-new-showcase .nat-showcase-card small{font-size:13px!important}
main>section:not(#home) .eyebrow,main>section:not(#home) .kicker{letter-spacing:.15em!important}
.fare-tabs button,.btn.primary,.fare-submit,.contacttop{border-radius:9px!important}
main>section:not(#home) a:focus-visible{outline:2px solid #f0d59d;outline-offset:3px}
@media(max-width:900px){#signature-experience .nat-showcase-cards{grid-template-columns:1fr!important}#destinations .grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){
 .shell,.top .shell,.toprow.shell,.navrow.shell{width:calc(100% - 24px)!important}
 #home.hero,.luxury-social.socialbar,main>section:not(#home),#signature-experience{width:calc(100% - 24px)!important;margin:14px auto!important;border-radius:15px!important;padding:30px 18px!important}
 #home.hero{padding:0!important}
 main>section:not(#home) h2{font-size:clamp(27px,8vw,37px)!important}
 #signature-experience h2{font-size:clamp(32px,8vw,42px)!important}
 #destinations .grid{gap:10px!important}
 #destinations .tile img{height:125px!important}
 .luxury-social .social-cards{grid-template-columns:1fr!important}
 #booking .fare-panel{padding:18px!important}
}
