/* Home FAQ — matches the approved mockup. Palette only. */
.fq{ position:relative; overflow:hidden; background:linear-gradient(180deg,#F3F8FF,#E6F0FF); padding:clamp(34px,4vw,64px) max(24px,4vw); font-family:'Inter',sans-serif; color:#003F9E; scroll-snap-align:start; }
.fq::after{ content:""; position:absolute; right:-120px; top:90px; width:260px; height:420px; border-radius:50%; background:#FEDA25; opacity:.28; pointer-events:none; }
.fq__in{ position:relative; z-index:1; max-width:1700px; margin:0 auto; display:grid; grid-template-columns:44% 1fr; gap:clamp(24px,3vw,48px); align-items:start; }
.fq__eye{ display:inline-flex; align-items:center; gap:12px; font:500 13px 'Inter',sans-serif; letter-spacing:.14em; text-transform:uppercase; color:#003F9E; }
.fq__eye i{ width:34px; height:3px; border-radius:3px; background:#FEB92D; }
.fq h2{ font:800 clamp(30px,3.6vw,56px)/1.05 'Poppins',sans-serif; letter-spacing:-.025em; color:#003F9E; margin:14px 0 14px; }
.fq h2 b{ color:#FEB92D; font-weight:800; }
.fq__lead{ margin:0 0 22px; font-size:clamp(14px,1.15vw,17px); line-height:1.55; max-width:520px; }
.fq__mid{ display:grid; grid-template-columns:1fr 44%; gap:12px; align-items:stretch; }
.fq__feat{ list-style:none; margin:0; padding:6px 0 10px; display:flex; flex-direction:column; justify-content:flex-start; gap:18px; }
.fq__feat li{ display:flex; gap:14px; align-items:center; }
.fq__feat span{ flex:none; width:60px; height:60px; border-radius:18px; display:grid; place-items:center; background:#fff; color:#0052CC; box-shadow:0 14px 24px -14px rgba(0,63,158,.5); }
.fq__feat--y span{ color:#FEB92D; }
.fq__feat b{ display:block; font:700 17px 'Poppins',sans-serif; }
.fq__feat p{ margin:2px 0 0; font-size:13.5px; line-height:1.4; }
.fq__photo{ position:relative; align-self:end; }
.fq__photo::before{ content:""; position:absolute; left:6%; right:-4%; bottom:0; height:78%; border-radius:46% 54% 20% 20%; background:#FEDA25; }
.fq__photo img{ position:relative; display:block; width:100%; aspect-ratio:4/5; object-fit:cover; object-position:50% 20%; border-radius:26px 26px 0 0; }
.fq__q{ position:absolute; right:2%; top:-14px; width:64px; height:60px; display:grid; place-items:center; background:#fff; border-radius:18px; box-shadow:0 14px 26px -12px rgba(0,63,158,.5); font:800 34px 'Poppins',sans-serif; color:#0052CC; transform:rotate(8deg); }
.fq__help{ position:relative; z-index:2; margin-top:-2px; display:grid; grid-template-columns:auto 1fr 232px; align-items:center; gap:16px; background:#fff; border-radius:26px; padding:18px 20px; box-shadow:0 24px 44px -24px rgba(0,63,158,.5); }
.fq__help-i{ width:60px; height:60px; border-radius:20px; display:grid; place-items:center; background:#E6F0FF; color:#0052CC; }
.fq__help h3{ font:700 clamp(17px,1.35vw,21px) 'Poppins',sans-serif; white-space:nowrap; margin:0 0 4px; }
.fq__help p{ margin:0; font-size:13px; line-height:1.5; }
.fq__help-b{ display:flex; flex-direction:column; gap:10px; }
.fq__btn{ display:inline-flex; align-items:center; justify-content:space-between; gap:12px; min-height:42px; padding:0 14px; border-radius:12px; font:600 13px 'Poppins',sans-serif; text-decoration:none; border:1.5px solid transparent; transition:transform .2s,background .2s; white-space:nowrap; }
.fq__btn:hover{ transform:translateY(-2px); }
.fq__btn--y{ background:#FEDA25; color:#003F9E; }.fq__btn--y:hover{ background:#FEB92D; }
.fq__btn--o{ background:#fff; color:#003F9E; border-color:#0052CC; }

.fq__tabs{ display:flex; gap:8px; overflow-x:auto; scrollbar-width:none; padding:2px 2px 0; }
.fq__tabs::-webkit-scrollbar{ display:none; }
.fq__tabs button{ flex:1 1 auto; justify-content:center; white-space:nowrap; display:inline-flex; align-items:center; gap:8px; min-height:52px; padding:0 14px; border:0; border-radius:16px 16px 0 0; background:rgba(255,255,255,.7); color:#003F9E; font:600 13.5px 'Poppins',sans-serif; cursor:pointer; transition:background .2s,color .2s; }
.fq__tabs button:hover{ background:#fff; }
.fq__tabs button.on{ background:#0052CC; color:#fff; box-shadow:0 12px 20px -12px rgba(0,82,204,.8); }
.fq__card{ background:#fff; border-radius:0 26px 26px 26px; padding:16px; box-shadow:0 26px 48px -26px rgba(0,63,158,.5); display:flex; flex-direction:column; gap:10px; min-height:300px; }
.fq__empty{ margin:auto; padding:30px; text-align:center; font-size:15px; }
.fq__empty a{ color:#0052CC; font-weight:600; }
.fq__item{ border:1px solid #E6F0FF; border-radius:16px; background:#fff; transition:background .2s,box-shadow .2s; }
.fq__item.is-open{ background:#E6F0FF; border-color:#E6F0FF; }
.fq__item button{ width:100%; display:flex; align-items:center; gap:16px; padding:14px 18px; background:none; border:0; text-align:left; cursor:pointer; color:#003F9E; }
.fq__n{ flex:none; width:44px; height:44px; border-radius:50%; display:grid; place-items:center; background:#E6F0FF; font:700 15px 'Poppins',sans-serif; color:#003F9E; }
.fq__item.is-open .fq__n{ background:#fff; }
.fq__t{ flex:1; font:600 clamp(14.5px,1.2vw,17px)/1.35 'Poppins',sans-serif; }
.fq__item button svg{ flex:none; transition:transform .25s; }
.fq__item.is-open button svg{ transform:rotate(180deg); }
.fq__item p{ margin:0; padding:0 22px 20px 78px; font-size:14.5px; line-height:1.7; }

@media (max-width:1024px){
  .fq__in{ grid-template-columns:minmax(0,1fr); }
  .fq::after{ display:none; }
}
@media (max-width:640px){
  .fq__mid{ grid-template-columns:minmax(0,1fr); }
  .fq__photo{ max-width:320px; margin:0 auto; }
  .fq__help{ grid-template-columns:1fr; padding:18px; }
  .fq__help h3{ white-space:normal; }
  .fq__help-i{ width:56px; height:56px; }
  .fq__item button{ padding:12px; gap:12px; }
  .fq__n{ width:36px; height:36px; font-size:13px; }
  .fq__item p{ padding:0 16px 16px 16px; }
  .fq__tabs button{ padding:0 16px; }
}
.fq__in>*,.fq__mid>*{ min-width:0; }
/* Desktop: scale with viewport height so the whole section fits one screen */
@media (min-width:1025px){
  .fq{ padding:clamp(12px,2.4vh,32px) max(24px,4vw); }
  .fq h2{ font-size:clamp(28px,min(3.4vw,5.4vh),56px); margin:8px 0 8px; }
  .fq__lead{ margin:0 0 clamp(8px,1.6vh,22px); font-size:clamp(13.5px,min(1.15vw,2.2vh),17px); }
  .fq__feat{ gap:clamp(10px,2vh,18px); }
  .fq__feat span{ width:clamp(46px,6.4vh,60px); height:clamp(46px,6.4vh,60px); }
  .fq__photo img{ aspect-ratio:auto; height:min(33vh,400px); }
  .fq__help{ padding:clamp(10px,1.6vh,18px) 20px; }
  .fq__help-i{ width:clamp(46px,6vh,60px); height:clamp(46px,6vh,60px); }
  .fq__card{ padding:clamp(10px,1.6vh,16px); gap:clamp(6px,1vh,10px); min-height:0; }
  .fq__tabs button{ min-height:clamp(42px,5.6vh,52px); }
  .fq__item button{ padding:clamp(8px,1.4vh,14px) 18px; }
  .fq__n{ width:clamp(36px,4.8vh,44px); height:clamp(36px,4.8vh,44px); }
  .fq__item p{ padding:0 22px clamp(10px,1.6vh,20px) 78px; line-height:1.6; }
}
@media (min-width:1025px) and (max-width:1500px){
  .fq__tabs{ gap:5px; }
  .fq__tabs button{ padding:0 9px; gap:6px; font-size:12.5px; }
  .fq__tabs button svg{ width:15px; height:15px; }
}
@media (min-width:1025px) and (max-width:1279px){
  .fq__tabs button svg{ display:none; }
}

/* Announcement popup — matches the approved mockups. Palette only. */
.an{ position:relative; display:grid; grid-template-columns:1.15fr .85fr; width:100%; max-width:980px; max-height:94vh; overflow:auto; background:linear-gradient(135deg,#fff,#E6F0FF); border-radius:32px; box-shadow:0 30px 70px -20px rgba(0,63,158,.6); font-family:'Inter',sans-serif; color:#003F9E; animation:anPop .3s ease both; }
@keyframes anPop{ from{ opacity:0; transform:translateY(14px) scale(.97); } to{ opacity:1; transform:none; } }
@media (prefers-reduced-motion:reduce){ .an{ animation:none; } }
.an__close{ position:absolute; top:18px; right:18px; z-index:3; width:48px; height:48px; border-radius:50%; border:0; background:#fff; color:#0052CC; display:grid; place-items:center; cursor:pointer; box-shadow:0 8px 20px -8px rgba(0,63,158,.5); transition:transform .2s; }
.an__close:hover{ transform:scale(1.08); }
.an__body{ padding:clamp(22px,4vh,40px) 8px clamp(10px,2vh,18px) clamp(24px,4vw,48px); display:flex; flex-direction:column; align-items:center; text-align:center; gap:clamp(10px,1.8vh,16px); min-width:0; }
.an__badge{ width:62px; height:62px; border-radius:50%; background:#0052CC; color:#FEDA25; display:grid; place-items:center; box-shadow:0 0 0 7px #E6F0FF; }
.an__title{ margin:0; font:800 clamp(28px,min(4.4vw,7vh),52px)/1.02 'Poppins',sans-serif; letter-spacing:-.02em; text-transform:uppercase; color:#003F9E; }
.an__title span{ display:block; font-size:1.2em; color:#0052CC; }
.an--promo .an__title--one span{ display:inline; font-size:1em; margin-left:.25em; }
.an__date{ margin:0; display:inline-flex; align-items:center; gap:14px; padding:10px 34px; border-radius:28px; background:linear-gradient(180deg,#0345D9,#003F9E); color:#fff; font:800 clamp(18px,2.3vw,28px) 'Poppins',sans-serif; text-transform:uppercase; box-shadow:0 16px 26px -14px rgba(0,63,158,.85); }
.an__date svg{ color:#FEDA25; } .an__date b{ color:#FEDA25; font-size:1.55em; line-height:1; }
.an__open{ margin:2px 0 0; display:flex; align-items:center; gap:14px; width:100%; justify-content:center; font:700 clamp(14px,1.6vw,19px) 'Poppins',sans-serif; letter-spacing:.04em; text-transform:uppercase; color:#0052CC; }
.an__open i{ flex:1; max-width:60px; height:2px; border-radius:2px; background:#FEB92D; }
.an__seats{ margin:0; display:inline-flex; align-items:center; gap:14px; padding:12px 26px 12px 14px; border-radius:99px; background:linear-gradient(90deg,#FEDA25,#FEB92D); color:#003F9E; font:700 clamp(15px,1.8vw,21px)/1.25 'Poppins',sans-serif; box-shadow:0 12px 20px -14px rgba(254,185,45,1); }
.an__seats svg{ flex:none; width:40px; height:40px; padding:9px; border-radius:50%; background:#003F9E; color:#FEDA25; }
/* promo: art on the right, perks + CTA span the full width below */
.an__art{ position:relative; display:grid; place-items:center; min-height:0; padding:clamp(24px,4vh,40px) clamp(10px,2vw,28px) 0 0; }
.an__svg{ width:100%; max-width:430px; height:auto; overflow:visible; }
.an__perks{ grid-column:1/-1; list-style:none; margin:0; padding:clamp(12px,2vh,20px) clamp(20px,3vw,40px); border-top:1px solid rgba(0,82,204,.14); display:grid; grid-template-columns:repeat(4,1fr); }
.an__perks li{ display:flex; align-items:center; justify-content:center; gap:12px; padding:0 12px; text-align:left; font:600 clamp(12px,1.15vw,14.5px)/1.25 'Poppins',sans-serif; }
.an__perks li+li{ border-left:1px solid rgba(0,82,204,.14); }
.an__perks span{ flex:none; width:clamp(40px,4vw,50px); height:clamp(40px,4vw,50px); border-radius:50%; background:#0052CC; color:#fff; display:grid; place-items:center; }
.an__ctarow{ grid-column:1/-1; display:flex; justify-content:center; padding:4px 20px clamp(18px,3.4vh,30px); }
.an__cta{ display:inline-flex; align-items:center; gap:18px; min-height:62px; padding:0 40px; border-radius:20px; background:linear-gradient(180deg,#0345D9,#003F9E); color:#fff; font:800 clamp(18px,2vw,24px) 'Poppins',sans-serif; text-transform:uppercase; text-decoration:none; box-shadow:0 20px 32px -14px rgba(0,63,158,.9); transition:transform .2s; }
.an__cta:hover{ transform:translateY(-2px); }
.an__cta span{ width:38px; height:38px; border-radius:50%; background:#fff; color:#0052CC; display:grid; place-items:center; }
/* notice layout: plain message, blue illustrated panel, support footer */
.an--notice{ grid-template-rows:1fr auto; background:#fff; }
.an--notice .an__body{ padding:clamp(22px,4vh,38px) 24px clamp(14px,2.4vh,26px) clamp(24px,4vw,48px); }
.an--notice .an__badge{ background:#E6F0FF; color:#0052CC; box-shadow:none; width:76px; height:76px; }
.an--notice .an__title span{ color:#FEB92D; }
.an__imp{ margin:0; display:flex; align-items:center; gap:14px; font:600 13px 'Poppins',sans-serif; letter-spacing:.5em; text-transform:uppercase; }
.an__imp i{ width:34px; height:1px; background:#0052CC; }
.an__msg{ margin:0; font-size:15.5px; line-height:1.6; max-width:440px; white-space:pre-line; }
.an__dcard{ display:flex; align-items:center; gap:16px; padding:16px 26px; border:1px solid rgba(0,82,204,.18); border-radius:20px; background:#E6F0FF; text-align:left; }
.an__dcard svg{ color:#0052CC; flex:none; } .an__dcard small{ display:block; font:700 12px 'Poppins',sans-serif; letter-spacing:.06em; text-transform:uppercase; color:#0052CC; }
.an__dcard b{ display:block; font:800 20px 'Poppins',sans-serif; text-transform:uppercase; } .an__dcard span{ display:block; font:500 15px 'Poppins',sans-serif; opacity:.75; text-transform:uppercase; }
.an--notice .an__art{ padding:20px 10px 0; background:linear-gradient(160deg,#0052CC,#003F9E); border-radius:0 32px 0 130px; overflow:hidden; align-content:center; }
.an--notice .an__art::before{ content:""; position:absolute; left:-10%; top:-6%; width:44%; height:130%; border-left:6px solid #FEB92D; border-radius:50%; }
.an__svg--n{ position:relative; max-width:360px; }
.an__foot{ grid-column:1/-1; margin:0; display:flex; align-items:center; gap:12px; padding:18px 40px; background:#003F9E; color:#fff; font-size:14.5px; }
.an__foot svg{ color:#FEDA25; flex:none; }
@media (max-width:760px){
  .an{ grid-template-columns:1fr; border-radius:24px; max-height:90dvh; }
  .an__body,.an--notice .an__body{ padding:10px 18px 6px; gap:9px; }
  .an__art{ order:-1; padding:18px 40px 0; } .an__svg{ max-width:150px; }
  .an__badge{ display:none; }
  .an--notice .an__art{ border-radius:24px 24px 0 70px; padding-bottom:10px; } .an__svg--n{ max-width:170px; }
  .an__title{ font-size:clamp(24px,7.4vw,30px); }
  .an__date{ padding:8px 22px; gap:10px; font-size:16px; }
  .an__open{ font-size:13px; }
  .an__seats{ padding:8px 18px 8px 10px; gap:10px; font-size:14px; } .an__seats svg{ width:32px; height:32px; padding:7px; }
  .an__perks{ grid-template-columns:1fr 1fr; gap:10px 0; padding:12px 14px; }
  .an__perks li{ justify-content:flex-start; gap:8px; padding:0 8px; font-size:12px; } .an__perks li:nth-child(3){ border-left:0; }
  .an__perks span{ width:34px; height:34px; }
  .an__cta{ width:100%; justify-content:center; font-size:16px; padding:0 18px; min-height:50px; }
  .an__ctarow{ padding:4px 16px 16px; }
  .an__foot{ padding:12px 18px; font-size:13px; } .an__close{ top:12px; right:12px; width:40px; height:40px; }
}
/* the Call/WhatsApp bar must not peek through the dimmed overlay */
body:has(.announce-overlay) .sc-bar{ display:none; }

