/*
  Luxury homepage visual rebuild
  Scope: visual structure only. Existing links, buttons, sections, forms and scripts remain unchanged.
*/

:root{
  --luxury-ink:#020a13;
  --luxury-navy:#061522;
  --luxury-panel:#061729;
  --luxury-panel-deep:#03101d;
  --luxury-gold:#d4a83e;
  --luxury-gold-light:#f1cb69;
  --luxury-ivory:#f7f1e5;
}

body{
  background:
    radial-gradient(circle at 50% 0%,rgba(202,156,47,.10),transparent 30rem),
    linear-gradient(180deg,#020913 0%,#061522 55%,#020913 100%) !important;
}

/* Keep the original navigation behavior while rebuilding its visual structure. */
@media (min-width:921px){
  .page-shell{
    padding-top:0 !important;
  }

  .site-header{
    width:calc(100% + 56px) !important;
    max-width:none !important;
    min-height:108px !important;
    margin:0 -28px !important;
    padding:14px clamp(30px,4.8vw,82px) !important;
    display:grid !important;
    grid-template-columns:minmax(260px,auto) minmax(410px,1fr) auto auto !important;
    align-items:center !important;
    gap:clamp(16px,2vw,34px) !important;
    border:0 !important;
    border-bottom:1px solid rgba(212,168,62,.72) !important;
    border-radius:0 !important;
    background:
      radial-gradient(circle at 50% 0%,rgba(212,168,62,.06),transparent 30rem),
      linear-gradient(180deg,rgba(2,11,20,.985),rgba(2,12,23,.965)) !important;
    box-shadow:0 16px 42px rgba(0,0,0,.30) !important;
    -webkit-backdrop-filter:blur(18px) !important;
    backdrop-filter:blur(18px) !important;
    top:0 !important;
  }

  .brand-mini{
    min-width:255px;
    gap:14px !important;
    padding:0 !important;
    color:var(--luxury-gold-light) !important;
  }

  .brand-mini img{
    width:72px !important;
    height:72px !important;
    filter:
      drop-shadow(0 9px 16px rgba(0,0,0,.55))
      drop-shadow(0 0 12px rgba(212,168,62,.20)) !important;
  }

  .brand-mini span{
    display:grid !important;
    gap:3px;
    font-size:1.15rem !important;
    line-height:1.25;
    color:var(--luxury-gold-light) !important;
    text-shadow:0 4px 14px rgba(0,0,0,.55);
  }

  .brand-mini span::after{
    content:"HOTEL & RESTAURANT  ★★★";
    display:block;
    direction:ltr;
    font-family:Georgia,"Times New Roman",serif;
    font-size:.60rem;
    font-weight:700;
    letter-spacing:.13em;
    color:#c89731;
    opacity:.96;
  }

  .top-nav{
    justify-content:center !important;
    gap:clamp(12px,1.2vw,26px) !important;
    flex-wrap:nowrap !important;
  }

  .nav-link{
    position:relative;
    padding:14px 4px 13px !important;
    border-radius:0 !important;
    background:transparent !important;
    color:#eee5d7 !important;
    font-size:1rem !important;
    font-weight:700 !important;
    opacity:.93 !important;
    white-space:nowrap;
  }

  .nav-link::after{
    content:"";
    position:absolute;
    right:50%;
    bottom:3px;
    width:0;
    height:2px;
    transform:translateX(50%);
    border-radius:999px;
    background:linear-gradient(90deg,transparent,var(--luxury-gold-light),transparent);
    box-shadow:0 0 12px rgba(241,203,105,.35);
    transition:width .24s ease;
  }

  .nav-link:hover,
  .nav-link.active{
    color:var(--luxury-gold-light) !important;
    box-shadow:none !important;
  }

  .nav-link:hover::after,
  .nav-link.active::after{
    width:72px;
  }

  .book-pill{
    order:initial !important;
    margin:0 !important;
    min-width:164px !important;
    min-height:52px !important;
    padding:11px 22px !important;
    gap:10px !important;
    border:1px solid #edc45a !important;
    border-radius:14px !important;
    background:linear-gradient(180deg,#f1c962 0%,#c98e25 100%) !important;
    color:#071321 !important;
    font-size:1.04rem !important;
    font-weight:900 !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.40),
      0 10px 25px rgba(177,119,21,.25) !important;
    transition:transform .22s ease,filter .22s ease,box-shadow .22s ease !important;
  }

  .book-pill:hover{
    transform:translateY(-2px);
    filter:brightness(1.06);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.45),
      0 15px 34px rgba(177,119,21,.34) !important;
  }

  .pill-calendar{
    width:24px !important;
    height:24px !important;
    filter:brightness(.24) saturate(.9) !important;
  }

  body.nile-home-active .language-switcher,
  .language-switcher{
    order:initial !important;
    margin:0 !important;
    padding:0 !important;
    gap:9px !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }

  .language-switcher button{
    min-width:64px !important;
    height:48px !important;
    padding:0 11px !important;
    gap:7px !important;
    border:1px solid rgba(212,168,62,.45) !important;
    border-radius:13px !important;
    background:linear-gradient(180deg,rgba(7,22,37,.96),rgba(3,13,24,.96)) !important;
    color:#f6eee2 !important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.018) !important;
  }

  .language-switcher button:hover{
    border-color:rgba(241,203,105,.80) !important;
    background:linear-gradient(180deg,rgba(14,34,54,.98),rgba(5,17,30,.98)) !important;
  }

  .language-switcher button.active{
    border-color:#f1c962 !important;
    background:linear-gradient(180deg,#f4ce6a,#c98e25) !important;
    color:#071321 !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.40),
      0 8px 22px rgba(177,119,21,.22) !important;
  }

  .language-switcher .lang-flag{
    font-size:.92rem !important;
  }

  .home-page{
    margin-top:0 !important;
    gap:46px !important;
  }

  .hero{
    width:calc(100% + 56px) !important;
    min-height:833px !important;
    margin-inline:-28px !important;
    padding:68px clamp(34px,4.4vw,74px) 48px !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:
      inset 0 -1px 0 rgba(212,168,62,.22),
      0 30px 80px rgba(0,0,0,.48) !important;
  }

  .hero-photo{
    background-image:url('assets/hero-main-luxury.webp') !important;
    background-size:cover !important;
    background-position:center 48% !important;
  }

  .hero-overlay{
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
    background:
      linear-gradient(180deg,rgba(1,7,13,.13) 0%,rgba(2,8,15,.23) 31%,rgba(2,9,17,.52) 63%,rgba(2,9,17,.92) 100%),
      linear-gradient(90deg,rgba(1,7,13,.38),transparent 23%,transparent 77%,rgba(1,7,13,.38)),
      radial-gradient(circle at 50% 38%,rgba(214,166,54,.13),transparent 29rem) !important;
  }

  .hero-content{
    margin:auto 0 20px !important;
    padding-top:18px;
  }

  .main-logo{
    width:min(286px,18vw) !important;
    margin:0 auto 10px !important;
    filter:
      drop-shadow(0 18px 28px rgba(0,0,0,.68))
      drop-shadow(0 0 14px rgba(212,168,62,.24)) !important;
  }

  .hero h1{
    margin:6px 0 10px !important;
    font-size:clamp(4.15rem,5vw,5.25rem) !important;
    line-height:1.03 !important;
    font-weight:900 !important;
    color:#f0ca65 !important;
    letter-spacing:-.035em !important;
    text-shadow:
      0 5px 0 rgba(94,52,5,.16),
      0 12px 28px rgba(0,0,0,.70),
      0 0 20px rgba(212,168,62,.14) !important;
  }

  .hero-subtitle{
    max-width:720px;
    margin:0 auto !important;
    color:#f8f4ec !important;
    font-size:clamp(1.12rem,1.45vw,1.38rem) !important;
    font-weight:600 !important;
    line-height:1.8 !important;
    text-shadow:0 5px 18px rgba(0,0,0,.82) !important;
  }

  .hero-ornament{
    width:270px !important;
    height:34px !important;
    margin-top:8px !important;
    opacity:.92 !important;
    filter:drop-shadow(0 4px 8px rgba(0,0,0,.45));
  }

  .primary-actions{
    width:min(1230px,calc(100% - 72px)) !important;
    gap:22px !important;
  }

  .feature-card{
    min-height:190px !important;
    padding:26px 28px 30px !important;
    gap:8px !important;
    border:1px solid rgba(221,174,62,.86) !important;
    border-radius:20px !important;
    background:
      radial-gradient(circle at 50% 0%,rgba(214,166,54,.07),transparent 12rem),
      linear-gradient(180deg,rgba(5,22,38,.965),rgba(2,13,24,.975)) !important;
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.025),
      0 17px 38px rgba(0,0,0,.42) !important;
  }

  .feature-card::before{
    inset:9px !important;
    border-radius:14px !important;
    border:1px solid rgba(212,168,62,.18) !important;
  }

  .feature-card:hover{
    transform:translateY(-5px) !important;
    border-color:#f0c85e !important;
    background:
      radial-gradient(circle at 50% 0%,rgba(214,166,54,.12),transparent 13rem),
      linear-gradient(180deg,rgba(9,31,51,.985),rgba(3,16,29,.985)) !important;
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.035),
      0 24px 48px rgba(0,0,0,.50),
      0 0 0 1px rgba(212,168,62,.07) !important;
  }

  .feature-card .icon{
    width:60px !important;
    height:60px !important;
    margin-bottom:1px !important;
    filter:
      drop-shadow(0 7px 11px rgba(0,0,0,.46))
      drop-shadow(0 0 9px rgba(241,203,105,.18)) !important;
  }

  .feature-card strong{
    color:#edc65d !important;
    font-size:1.50rem !important;
    font-weight:900 !important;
    text-shadow:0 4px 12px rgba(0,0,0,.50);
  }

  .feature-card small{
    max-width:310px;
    padding-bottom:14px !important;
    color:#e8dfcf !important;
    font-size:.91rem !important;
    font-weight:600 !important;
    line-height:1.75 !important;
  }

  .feature-card::after{
    bottom:12px !important;
    width:82px !important;
    opacity:.82 !important;
  }
}

/* Tablet: retain the same interactions with a less crowded composition. */
@media (min-width:921px) and (max-width:1240px){
  .site-header{
    grid-template-columns:minmax(210px,auto) minmax(330px,1fr) auto auto !important;
    padding-inline:24px !important;
    gap:13px !important;
  }
  .brand-mini{min-width:210px;gap:10px !important;}
  .brand-mini img{width:60px !important;height:60px !important;}
  .brand-mini span{font-size:.98rem !important;}
  .brand-mini span::after{font-size:.51rem;letter-spacing:.08em;}
  .top-nav{gap:10px !important;}
  .nav-link{font-size:.92rem !important;}
  .book-pill{min-width:138px !important;padding-inline:15px !important;}
  .language-switcher button{min-width:54px !important;padding-inline:8px !important;}
  .hero h1{font-size:4rem !important;}
  .main-logo{width:250px !important;}
}

/* Mobile keeps every original control and section; only the visual finish changes. */
@media (max-width:920px){
  .site-header{
    border-color:rgba(212,168,62,.38) !important;
    background:linear-gradient(180deg,rgba(4,18,31,.97),rgba(2,11,20,.95)) !important;
    box-shadow:0 16px 36px rgba(0,0,0,.34) !important;
  }

  .brand-mini img{
    filter:drop-shadow(0 7px 12px rgba(0,0,0,.50)) drop-shadow(0 0 8px rgba(212,168,62,.16)) !important;
  }

  .book-pill{
    border-color:#e7bb52 !important;
    background:linear-gradient(180deg,#edc45e,#c78d24) !important;
    color:#071321 !important;
  }

  .hero.hero-photo{
    background-image:url('assets/hero-main-luxury.webp') !important;
    background-position:center 48% !important;
  }

  .hero-overlay{
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
    background:
      linear-gradient(180deg,rgba(2,8,15,.25),rgba(2,9,17,.53) 45%,rgba(2,9,17,.94) 100%),
      radial-gradient(circle at 50% 26%,rgba(212,168,62,.12),transparent 17rem) !important;
  }

  .hero h1{
    color:#f0ca65 !important;
    font-weight:900 !important;
    text-shadow:0 10px 24px rgba(0,0,0,.70) !important;
  }

  .feature-card{
    border-color:rgba(221,174,62,.72) !important;
    background:linear-gradient(180deg,rgba(5,22,38,.96),rgba(2,13,24,.98)) !important;
    box-shadow:0 16px 35px rgba(0,0,0,.38) !important;
  }
}

@media (prefers-reduced-motion:reduce){
  .nav-link::after,
  .book-pill,
  .feature-card{transition:none !important;}
}

/* v2 - refined mobile header: same controls, cleaner two-row layout */
@media (max-width:920px){
  .page-shell{
    padding-top:env(safe-area-inset-top,0px) !important;
  }

  .site-header{
    width:100% !important;
    max-width:100% !important;
    min-height:0 !important;
    margin:8px 0 14px !important;
    padding:9px 10px 10px !important;
    display:grid !important;
    grid-template-columns:48px minmax(0,1fr) 48px !important;
    grid-template-areas:
      "toggle book brand"
      "langs langs langs" !important;
    align-items:center !important;
    justify-items:center !important;
    column-gap:10px !important;
    row-gap:8px !important;
    border:1px solid rgba(224,178,67,.52) !important;
    border-radius:19px !important;
    background:
      radial-gradient(circle at 50% -35%,rgba(229,183,72,.10),transparent 12rem),
      linear-gradient(180deg,rgba(4,18,31,.985),rgba(2,11,20,.985)) !important;
    box-shadow:
      0 14px 34px rgba(0,0,0,.38),
      inset 0 0 0 1px rgba(255,255,255,.025) !important;
    overflow:visible !important;
    top:max(7px,env(safe-area-inset-top)) !important;
  }

  .brand-mini{
    grid-area:brand !important;
    display:flex !important;
    width:48px !important;
    min-width:48px !important;
    height:48px !important;
    padding:3px !important;
    margin:0 !important;
    align-items:center !important;
    justify-content:center !important;
    border:1px solid rgba(224,178,67,.26) !important;
    border-radius:15px !important;
    background:linear-gradient(180deg,rgba(13,31,50,.82),rgba(5,15,27,.82)) !important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.018) !important;
  }

  .brand-mini img{
    display:block !important;
    width:40px !important;
    height:40px !important;
    object-fit:contain !important;
    filter:drop-shadow(0 5px 9px rgba(0,0,0,.52)) drop-shadow(0 0 7px rgba(212,168,62,.15)) !important;
  }

  .brand-mini span{
    display:none !important;
  }

  .nav-toggle{
    grid-area:toggle !important;
    display:flex !important;
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    margin:0 !important;
    padding:0 !important;
    align-items:center !important;
    justify-content:center !important;
    flex-direction:column !important;
    gap:5px !important;
    border:1px solid rgba(224,178,67,.52) !important;
    border-radius:15px !important;
    background:linear-gradient(180deg,rgba(13,31,50,.92),rgba(5,15,27,.96)) !important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 8px 16px rgba(0,0,0,.18) !important;
  }

  .nav-toggle span{
    width:21px !important;
    height:2px !important;
    margin:0 !important;
    border-radius:999px !important;
    background:linear-gradient(90deg,#b77c20,#f3cf69,#b77c20) !important;
    box-shadow:0 0 6px rgba(241,203,105,.12) !important;
  }

  .book-pill{
    grid-area:book !important;
    justify-self:center !important;
    width:min(172px,100%) !important;
    min-width:0 !important;
    min-height:48px !important;
    height:48px !important;
    margin:0 !important;
    padding:9px 15px !important;
    gap:8px !important;
    border:1px solid #f0c65e !important;
    border-radius:15px !important;
    background:linear-gradient(180deg,#f1c963 0%,#c98f25 100%) !important;
    color:#071321 !important;
    font-size:1rem !important;
    font-weight:900 !important;
    line-height:1 !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 8px 19px rgba(176,117,18,.24) !important;
  }

  .book-pill .pill-calendar{
    width:21px !important;
    height:21px !important;
    flex:0 0 21px !important;
    filter:brightness(.22) saturate(.8) !important;
  }

  body.nile-home-active .language-switcher,
  .language-switcher{
    grid-area:langs !important;
    width:min(250px,100%) !important;
    min-width:0 !important;
    margin:0 auto !important;
    padding:4px !important;
    display:flex !important;
    flex-wrap:nowrap !important;
    justify-content:center !important;
    align-items:center !important;
    gap:4px !important;
    border:1px solid rgba(224,178,67,.24) !important;
    border-radius:14px !important;
    background:rgba(1,9,17,.68) !important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.018) !important;
  }

  .language-switcher button{
    flex:1 1 0 !important;
    min-width:0 !important;
    width:auto !important;
    height:34px !important;
    padding:0 8px !important;
    gap:5px !important;
    border:1px solid transparent !important;
    border-radius:10px !important;
    background:transparent !important;
    color:#eee4d3 !important;
    font-size:.83rem !important;
    font-weight:900 !important;
    white-space:nowrap !important;
    box-shadow:none !important;
  }

  .language-switcher button:hover{
    border-color:rgba(224,178,67,.32) !important;
    background:rgba(12,31,50,.72) !important;
  }

  .language-switcher button.active{
    border-color:#edc45c !important;
    background:linear-gradient(180deg,#f0c862,#ca9025) !important;
    color:#071321 !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.34),0 5px 12px rgba(168,108,15,.18) !important;
  }

  .language-switcher .lang-flag{
    font-size:.88rem !important;
    line-height:1 !important;
  }

  .top-nav{
    position:absolute !important;
    top:calc(100% + 8px) !important;
    left:0 !important;
    right:0 !important;
    z-index:100 !important;
    width:100% !important;
    margin:0 !important;
    padding:10px !important;
    gap:6px !important;
    border:1px solid rgba(224,178,67,.46) !important;
    border-radius:18px !important;
    background:linear-gradient(180deg,rgba(4,18,31,.995),rgba(2,10,19,.995)) !important;
    box-shadow:0 18px 42px rgba(0,0,0,.52),inset 0 0 0 1px rgba(255,255,255,.025) !important;
    -webkit-backdrop-filter:blur(18px) !important;
    backdrop-filter:blur(18px) !important;
  }

  .top-nav.open{
    display:grid !important;
  }

  .top-nav .nav-link{
    width:100% !important;
    min-height:44px !important;
    padding:11px 15px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    border:1px solid transparent !important;
    border-radius:12px !important;
    background:transparent !important;
    color:#f4eadb !important;
    font-size:.96rem !important;
    font-weight:800 !important;
    text-align:start !important;
  }

  .top-nav .nav-link:hover,
  .top-nav .nav-link.active{
    border-color:rgba(224,178,67,.26) !important;
    background:linear-gradient(90deg,rgba(212,168,62,.12),rgba(12,31,50,.45)) !important;
    color:#f1cb69 !important;
  }

  .top-nav .nav-link::after{
    display:none !important;
  }
}

@media (max-width:390px){
  .site-header{
    grid-template-columns:44px minmax(0,1fr) 44px !important;
    column-gap:7px !important;
    padding-inline:8px !important;
  }

  .brand-mini,
  .nav-toggle{
    width:44px !important;
    min-width:44px !important;
    height:44px !important;
    border-radius:14px !important;
  }

  .brand-mini img{
    width:37px !important;
    height:37px !important;
  }

  .book-pill{
    width:min(154px,100%) !important;
    height:44px !important;
    min-height:44px !important;
    padding-inline:11px !important;
    font-size:.93rem !important;
  }

  .book-pill .pill-calendar{
    width:19px !important;
    height:19px !important;
    flex-basis:19px !important;
  }

  body.nile-home-active .language-switcher,
  .language-switcher{
    width:min(232px,100%) !important;
  }

  .language-switcher button{
    height:32px !important;
    padding-inline:6px !important;
    font-size:.78rem !important;
  }
}

/* v3 — mobile composition matched to the approved mockup.
   Visual-only overrides: links, buttons, routing and scripts stay unchanged. */
@media (max-width:920px){
  html,body{
    overflow-x:hidden !important;
  }

  .page-shell{
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 0 34px !important;
  }

  .site-header{
    position:sticky !important;
    top:0 !important;
    z-index:80 !important;
    width:100% !important;
    max-width:none !important;
    min-height:88px !important;
    margin:0 !important;
    padding:16px 13px !important;
    display:grid !important;
    grid-template-columns:minmax(0,1.35fr) minmax(118px,.95fr) 48px !important;
    grid-template-areas:"langs book toggle" !important;
    align-items:center !important;
    justify-items:stretch !important;
    gap:11px !important;
    direction:ltr !important;
    border:0 !important;
    border-bottom:1px solid rgba(212,168,62,.48) !important;
    border-radius:0 !important;
    background:
      radial-gradient(circle at 35% -80%,rgba(212,168,62,.10),transparent 15rem),
      linear-gradient(180deg,#03111f 0%,#020c17 100%) !important;
    box-shadow:0 12px 32px rgba(0,0,0,.38) !important;
    overflow:visible !important;
  }

  .brand-mini{
    display:none !important;
  }

  body.nile-home-active .language-switcher,
  .language-switcher{
    grid-area:langs !important;
    direction:rtl !important;
    width:100% !important;
    min-width:0 !important;
    height:52px !important;
    margin:0 !important;
    padding:0 !important;
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    align-items:stretch !important;
    gap:0 !important;
    overflow:hidden !important;
    border:1px solid rgba(229,183,72,.74) !important;
    border-radius:999px !important;
    background:linear-gradient(180deg,rgba(7,24,40,.98),rgba(2,12,22,.98)) !important;
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.025),
      0 8px 18px rgba(0,0,0,.20) !important;
  }

  .language-switcher button{
    position:relative !important;
    width:100% !important;
    min-width:0 !important;
    height:50px !important;
    margin:0 !important;
    padding:0 7px !important;
    display:flex !important;
    flex-direction:row-reverse !important;
    align-items:center !important;
    justify-content:center !important;
    gap:5px !important;
    direction:ltr !important;
    border:0 !important;
    border-inline-start:1px solid rgba(212,168,62,.22) !important;
    border-radius:0 !important;
    background:transparent !important;
    color:#f5ecdf !important;
    font-size:.92rem !important;
    font-weight:900 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    box-shadow:none !important;
  }

  .language-switcher button:first-child{
    border-inline-start:0 !important;
  }

  .language-switcher button:hover{
    background:rgba(17,39,61,.72) !important;
  }

  .language-switcher button.active{
    border:0 !important;
    background:linear-gradient(180deg,#f2cf6e 0%,#cc9228 100%) !important;
    color:#071321 !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.42),
      0 0 18px rgba(205,145,37,.20) !important;
  }

  .language-switcher .lang-flag{
    font-size:.84rem !important;
    line-height:1 !important;
  }

  .book-pill{
    grid-area:book !important;
    justify-self:stretch !important;
    align-self:center !important;
    width:100% !important;
    min-width:0 !important;
    height:52px !important;
    min-height:52px !important;
    margin:0 !important;
    padding:9px 12px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    direction:rtl !important;
    border:1px solid rgba(240,198,94,.90) !important;
    border-radius:18px !important;
    background:linear-gradient(180deg,rgba(8,25,42,.98),rgba(3,14,25,.98)) !important;
    color:#edc45d !important;
    font-size:clamp(.86rem,3.5vw,1rem) !important;
    font-weight:900 !important;
    line-height:1 !important;
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.022),
      0 8px 18px rgba(0,0,0,.24) !important;
  }

  .book-pill:hover{
    color:#f6d77d !important;
    background:linear-gradient(180deg,rgba(14,35,56,.99),rgba(4,17,30,.99)) !important;
  }

  .book-pill .pill-calendar{
    width:22px !important;
    height:22px !important;
    flex:0 0 22px !important;
    filter:none !important;
  }

  .nav-toggle{
    grid-area:toggle !important;
    justify-self:end !important;
    width:48px !important;
    height:52px !important;
    min-width:48px !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex-direction:column !important;
    gap:7px !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }

  .nav-toggle span{
    display:block !important;
    width:30px !important;
    height:2px !important;
    margin:0 !important;
    border-radius:999px !important;
    background:linear-gradient(90deg,#b77c20,#f3cf69,#b77c20) !important;
    box-shadow:0 0 7px rgba(241,203,105,.13) !important;
  }

  .top-nav{
    position:absolute !important;
    top:calc(100% + 1px) !important;
    left:10px !important;
    right:10px !important;
    z-index:100 !important;
    width:auto !important;
    margin:0 !important;
    padding:10px !important;
    gap:6px !important;
    direction:rtl !important;
    border:1px solid rgba(224,178,67,.46) !important;
    border-radius:18px !important;
    background:linear-gradient(180deg,rgba(4,18,31,.995),rgba(2,10,19,.995)) !important;
    box-shadow:0 18px 42px rgba(0,0,0,.54),inset 0 0 0 1px rgba(255,255,255,.025) !important;
    -webkit-backdrop-filter:blur(18px) !important;
    backdrop-filter:blur(18px) !important;
  }

  .home-page{
    margin-top:0 !important;
    gap:34px !important;
  }

  .hero,
  .hero.hero-photo{
    width:100% !important;
    min-height:auto !important;
    margin:0 !important;
    padding:44px 12px 34px !important;
    border:0 !important;
    border-radius:0 !important;
    background-image:url('assets/hero-main-luxury.webp') !important;
    background-size:cover !important;
    background-position:center 43% !important;
    box-shadow:0 22px 54px rgba(0,0,0,.44) !important;
  }

  .hero-overlay{
    background:
      linear-gradient(180deg,rgba(1,7,13,.20) 0%,rgba(2,8,15,.40) 35%,rgba(2,9,17,.76) 68%,rgba(2,9,17,.98) 100%),
      radial-gradient(circle at 50% 24%,rgba(212,168,62,.12),transparent 17rem) !important;
  }

  .hero-content{
    margin:0 0 30px !important;
    padding:0 8px !important;
  }

  .main-logo{
    width:min(205px,54vw) !important;
    margin:0 auto 6px !important;
  }

  .hero h1{
    margin:4px 0 9px !important;
    font-size:clamp(2.15rem,9.3vw,2.85rem) !important;
    line-height:1.08 !important;
  }

  .hero-subtitle{
    max-width:330px !important;
    margin:0 auto !important;
    font-size:clamp(.94rem,4vw,1.05rem) !important;
    line-height:1.75 !important;
  }

  .hero-ornament{
    width:min(230px,68vw) !important;
    height:29px !important;
    margin-top:12px !important;
  }

  .primary-actions{
    width:100% !important;
    padding:0 7px !important;
    display:flex !important;
    flex-direction:column !important;
    gap:16px !important;
  }

  .feature-card{
    width:100% !important;
    min-height:150px !important;
    padding:24px 102px 24px 22px !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    align-content:center !important;
    justify-items:center !important;
    gap:8px !important;
    position:relative !important;
    direction:rtl !important;
    text-align:center !important;
    border:1px solid rgba(229,181,65,.88) !important;
    border-radius:24px !important;
    background:
      radial-gradient(circle at 100% 50%,rgba(212,168,62,.07),transparent 8rem),
      linear-gradient(180deg,rgba(5,22,38,.985),rgba(2,13,24,.995)) !important;
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.022),
      0 16px 36px rgba(0,0,0,.38) !important;
  }

  .feature-card::before{
    content:"" !important;
    position:absolute !important;
    top:24px !important;
    bottom:24px !important;
    right:88px !important;
    left:auto !important;
    width:1px !important;
    border:0 !important;
    border-radius:0 !important;
    background:linear-gradient(180deg,transparent,rgba(229,181,65,.88) 20%,rgba(229,181,65,.88) 80%,transparent) !important;
    opacity:.84 !important;
  }

  .feature-card::after{
    display:none !important;
  }

  .feature-card .icon{
    position:absolute !important;
    right:24px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    width:52px !important;
    height:52px !important;
    margin:0 !important;
  }

  .feature-card strong{
    width:100% !important;
    color:#edc45d !important;
    font-size:1.40rem !important;
    font-weight:900 !important;
    line-height:1.25 !important;
  }

  .feature-card small{
    width:100% !important;
    max-width:260px !important;
    padding:0 !important;
    color:#ebe3d6 !important;
    font-size:.91rem !important;
    font-weight:500 !important;
    line-height:1.70 !important;
  }

  .feature-card[data-view="booking"]{order:1 !important;}
  .feature-card[data-view="hotel"]{order:2 !important;}
  .feature-card[data-view="menu"]{order:3 !important;}
}

@media (max-width:370px){
  .site-header{
    min-height:80px !important;
    padding:13px 8px !important;
    grid-template-columns:minmax(0,1.35fr) minmax(104px,.92fr) 42px !important;
    gap:7px !important;
  }

  body.nile-home-active .language-switcher,
  .language-switcher{
    height:46px !important;
  }

  .language-switcher button{
    height:44px !important;
    padding-inline:4px !important;
    gap:3px !important;
    font-size:.76rem !important;
  }

  .language-switcher .lang-flag{
    font-size:.72rem !important;
  }

  .book-pill{
    height:46px !important;
    min-height:46px !important;
    padding-inline:8px !important;
    gap:5px !important;
    border-radius:15px !important;
    font-size:.80rem !important;
  }

  .book-pill .pill-calendar{
    width:18px !important;
    height:18px !important;
    flex-basis:18px !important;
  }

  .nav-toggle{
    width:42px !important;
    min-width:42px !important;
    height:46px !important;
  }

  .nav-toggle span{
    width:26px !important;
  }

  .hero,
  .hero.hero-photo{
    padding-inline:8px !important;
  }

  .primary-actions{
    padding-inline:3px !important;
  }

  .feature-card{
    min-height:140px !important;
    padding:21px 88px 21px 14px !important;
  }

  .feature-card::before{
    right:76px !important;
  }

  .feature-card .icon{
    right:20px !important;
    width:44px !important;
    height:44px !important;
  }

  .feature-card strong{
    font-size:1.24rem !important;
  }

  .feature-card small{
    font-size:.83rem !important;
  }
}

/* v4 — header spacing and typography tuning requested after mobile review.
   Visual-only: no links, language behavior, navigation targets or scripts changed. */
@media (min-width:1241px){
  .top-nav .nav-link{
    font-size:1.14rem !important;
    font-weight:800 !important;
    letter-spacing:.005em !important;
  }
}

@media (min-width:921px) and (max-width:1240px){
  .top-nav .nav-link{
    font-size:1.01rem !important;
    font-weight:800 !important;
  }
}

@media (max-width:920px){
  .site-header{
    min-height:76px !important;
    padding:12px 10px !important;
    grid-template-columns:minmax(0,1fr) minmax(132px,.78fr) 42px !important;
    gap:8px !important;
  }

  body.nile-home-active .language-switcher,
  .language-switcher{
    height:48px !important;
  }

  .language-switcher button{
    height:46px !important;
    padding-inline:4px !important;
    gap:3px !important;
    font-size:.82rem !important;
  }

  .language-switcher .lang-flag{
    font-size:.74rem !important;
  }

  .book-pill{
    height:48px !important;
    min-height:48px !important;
    padding:6px 8px !important;
    gap:5px !important;
    border-radius:16px !important;
    font-size:clamp(.76rem,2.85vw,.90rem) !important;
    line-height:1.05 !important;
    text-align:center !important;
    white-space:normal !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }

  html[lang="tr"] .book-pill{
    padding-inline:6px !important;
    gap:4px !important;
    font-size:clamp(.70rem,2.55vw,.80rem) !important;
    letter-spacing:-.018em !important;
  }

  .book-pill .pill-calendar{
    width:20px !important;
    height:20px !important;
    flex:0 0 20px !important;
  }

  .nav-toggle{
    width:42px !important;
    min-width:42px !important;
    height:48px !important;
    gap:6px !important;
  }

  .nav-toggle span{
    width:27px !important;
  }
}

@media (max-width:370px){
  .site-header{
    min-height:68px !important;
    padding:9px 6px !important;
    grid-template-columns:minmax(0,1fr) minmax(112px,.78fr) 36px !important;
    gap:5px !important;
  }

  body.nile-home-active .language-switcher,
  .language-switcher{
    height:42px !important;
  }

  .language-switcher button{
    height:40px !important;
    padding-inline:3px !important;
    gap:2px !important;
    font-size:.69rem !important;
  }

  .language-switcher .lang-flag{
    font-size:.63rem !important;
  }

  .book-pill{
    height:42px !important;
    min-height:42px !important;
    padding-inline:5px !important;
    gap:3px !important;
    border-radius:14px !important;
    font-size:.68rem !important;
  }

  html[lang="tr"] .book-pill{
    padding-inline:4px !important;
    font-size:.62rem !important;
    letter-spacing:-.025em !important;
  }

  .book-pill .pill-calendar{
    width:16px !important;
    height:16px !important;
    flex:0 0 16px !important;
  }

  .nav-toggle{
    width:36px !important;
    min-width:36px !important;
    height:42px !important;
    gap:5px !important;
  }

  .nav-toggle span{
    width:23px !important;
  }
}

/* v5 - transparent hero header with elegant single language pill (T70) */
body.home-transparent-header .page-shell{
  padding-top:0 !important;
}

body.home-transparent-header .site-header{
  position:absolute !important;
  top:18px !important;
  left:24px !important;
  right:24px !important;
  width:auto !important;
  max-width:none !important;
  min-height:72px !important;
  margin:0 !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:32px !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
  z-index:55 !important;
}

body.home-transparent-header .site-header::after{
  content:"";
  position:absolute;
  inset:-14px -20px auto;
  height:118px;
  background:linear-gradient(180deg,rgba(1,8,18,.62) 0%,rgba(1,8,18,.22) 58%,rgba(1,8,18,0) 100%);
  pointer-events:none;
  z-index:-1;
}

body.home-transparent-header .site-header .brand-mini,
body.home-transparent-header .site-header .book-pill{
  display:none !important;
}

body.home-transparent-header .top-nav{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:clamp(20px,2.3vw,46px) !important;
  flex-wrap:nowrap !important;
}

body.home-transparent-header .nav-link{
  padding:10px 0 12px !important;
  background:transparent !important;
  border-radius:0 !important;
  color:rgba(255,255,255,.92) !important;
  font-weight:700 !important;
  font-size:1rem !important;
  text-shadow:0 2px 12px rgba(0,0,0,.48) !important;
  opacity:1 !important;
}

body.home-transparent-header .nav-link:hover,
body.home-transparent-header .nav-link.active{
  color:#fff6df !important;
}

body.home-transparent-header .nav-link::after{
  bottom:-1px !important;
  height:2px !important;
  background:linear-gradient(90deg,transparent,#d4af37,transparent) !important;
  box-shadow:0 0 12px rgba(212,175,55,.30) !important;
}

body.home-transparent-header .language-switcher{
  display:flex !important;
  position:absolute !important;
  left:0 !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

body.home-transparent-header .language-switcher .language-current{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  min-width:124px !important;
  height:52px !important;
  padding:0 22px !important;
  border-radius:999px !important;
  border:1px solid rgba(203,156,67,.72) !important;
  background:rgba(5,16,29,.18) !important;
  color:#f8f0df !important;
  font-weight:800 !important;
  font-size:1.05rem !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05), 0 6px 24px rgba(0,0,0,.18) !important;
  -webkit-backdrop-filter:blur(8px) saturate(120%) !important;
  backdrop-filter:blur(8px) saturate(120%) !important;
  cursor:pointer;
}

body.home-transparent-header .language-switcher .lang-globe{
  font-size:1.05rem !important;
  line-height:1 !important;
}

body.home-transparent-header .language-switcher .language-options{
  position:absolute;
  top:calc(100% + 10px);
  left:0;
  min-width:160px;
  padding:8px;
  display:grid;
  gap:6px;
  border-radius:18px;
  border:1px solid rgba(203,156,67,.25);
  background:rgba(4,12,22,.92);
  box-shadow:0 20px 40px rgba(0,0,0,.32);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
  opacity:0;
  pointer-events:none;
  transform:translateY(10px);
  transition:opacity .22s ease, transform .22s ease;
}

body.home-transparent-header .language-switcher.open .language-options{
  opacity:1;
  pointer-events:auto;
  transform:translateY(0);
}

body.home-transparent-header .language-switcher .language-option{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  min-height:42px;
  padding:0 14px;
  border-radius:12px;
  border:1px solid transparent;
  background:transparent;
  color:#f6ecda;
  font-weight:700;
  cursor:pointer;
}

body.home-transparent-header .language-switcher .language-option:hover,
body.home-transparent-header .language-switcher .language-option.active{
  border-color:rgba(203,156,67,.36);
  background:rgba(212,175,55,.10);
  color:#fff2cf;
}

body.home-transparent-header .hero{
  padding-top:154px !important;
}

@media (max-width:920px){
  body.home-transparent-header .page-shell{
    padding:0 12px 34px !important;
  }

  body.home-transparent-header .site-header{
    top:14px !important;
    left:12px !important;
    right:12px !important;
    min-height:56px !important;
    display:grid !important;
    grid-template-columns:52px 1fr auto !important;
    justify-content:space-between !important;
    align-items:center !important;
    gap:10px !important;
  }

  body.home-transparent-header .site-header::after{
    inset:-10px -12px auto;
    height:92px;
    background:linear-gradient(180deg,rgba(1,8,18,.58) 0%,rgba(1,8,18,.18) 60%,rgba(1,8,18,0) 100%);
  }

  body.home-transparent-header .nav-toggle{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:52px !important;
    height:52px !important;
    border:0 !important;
    background:transparent !important;
    border-radius:16px !important;
    box-shadow:none !important;
    order:1 !important;
    justify-self:start !important;
  }

  body.home-transparent-header .nav-toggle span{
    width:28px !important;
    height:2px !important;
    margin:4px auto !important;
    background:linear-gradient(90deg,rgba(255,255,255,.88),rgba(255,255,255,.72)) !important;
    box-shadow:none !important;
  }

  body.home-transparent-header .top-nav{
    display:none !important;
    position:absolute !important;
    top:58px !important;
    left:0 !important;
    right:0 !important;
    padding:14px !important;
    border:1px solid rgba(203,156,67,.20) !important;
    border-radius:22px !important;
    background:rgba(4,12,22,.78) !important;
    box-shadow:0 20px 40px rgba(0,0,0,.28) !important;
    -webkit-backdrop-filter:blur(14px) saturate(125%) !important;
    backdrop-filter:blur(14px) saturate(125%) !important;
  }

  body.home-transparent-header .top-nav.open{
    display:grid !important;
    gap:4px !important;
  }

  body.home-transparent-header .top-nav .nav-link{
    width:100% !important;
    padding:14px 16px !important;
    border-radius:16px !important;
    background:transparent !important;
    text-align:right !important;
  }

  body.home-transparent-header .top-nav .nav-link.active,
  body.home-transparent-header .top-nav .nav-link:hover{
    background:rgba(212,175,55,.10) !important;
  }

  body.home-transparent-header .top-nav .nav-link::after{
    display:none !important;
  }

  body.home-transparent-header .language-switcher{
    position:relative !important;
    left:auto !important;
    top:auto !important;
    transform:none !important;
    justify-self:end !important;
    order:3 !important;
  }

  body.home-transparent-header .language-switcher .language-current{
    min-width:136px !important;
    height:52px !important;
    padding:0 18px !important;
    font-size:1rem !important;
    background:rgba(5,16,29,.22) !important;
  }

  body.home-transparent-header .language-switcher .language-options{
    left:auto;
    right:0;
    min-width:160px;
  }

  body.home-transparent-header .hero{
    padding-top:116px !important;
  }
}
