/* Affordable Holidays v2 — brand rules in CLAUDE.md. Scoped to body.ahx so legacy pages are untouched. */
.ahx{margin:0;font-family:'Schibsted Grotesk',system-ui,sans-serif;color:#111;background:#fff;-webkit-font-smoothing:antialiased}
.ahx *{box-sizing:border-box}.ahx img{max-width:100%;display:block}
.ahx a{color:#111;text-decoration:none}.ahx a:hover{color:#8037FF}
.ahx h1,.ahx h2{margin:0;font-weight:600;letter-spacing:-.03em;text-wrap:balance}
.ahx h1{font-size:clamp(34px,5vw,64px);line-height:1.04}.ahx h2{font-size:clamp(26px,3.2vw,44px);line-height:1.06;letter-spacing:-.025em}
.ahx-wrap{width:100%;max-width:1440px;margin:0 auto;padding:0 20px}
.ahx-section{padding-top:40px;padding-bottom:40px}
.ahx-eyebrow{margin:0 0 8px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#555}.ahx-eyebrow--purple{color:#5420C8}
.ahx-lead{font-size:16px;line-height:1.5;color:#2A2A33;margin:0}.ahx-sub{margin:6px 0 0;font-size:15px;color:#333}.ahx-small{font-size:13px;color:#444}
.ahx-btn{display:inline-flex;align-items:center;justify-content:center;height:52px;padding:0 26px;border-radius:999px;background:#8037FF;color:#fff!important;font-size:16px;font-weight:700;border:0;cursor:pointer}
.ahx-btn:hover{background:#6A26E0}.ahx-btn--ghost{background:transparent;color:#111!important;border:1.5px solid #111;font-weight:600}.ahx-btn--ghost:hover{background:#111;color:#fff!important}
.ahx-btn--sm{height:44px;padding:0 18px;font-size:15px}
.ahx-actions{display:flex;flex-wrap:wrap;gap:10px}
.ahx-link{font-weight:600;color:#5420C8!important;text-decoration:underline!important;text-underline-offset:4px}
/* banner */
.ahx-banner{position:relative;background:#111;color:#fff;min-height:44px;display:flex;align-items:center;justify-content:center;padding:6px 52px 6px 16px;font-size:13px}
.ahx-banner b{color:#C9B8FF;font-weight:600}.ahx-banner a{color:#fff!important;text-decoration:underline;font-weight:600}
.ahx-banner__msg>span{display:none}.ahx-banner__msg>span.is-on{display:inline}
.ahx-banner__x{position:absolute;right:4px;top:0;width:44px;height:44px;border:0;background:none;color:#fff;font-size:20px;cursor:pointer}
.ahx-utility{display:none}
/* nav */
.ahx-nav{position:sticky;top:0;z-index:20;height:56px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 12px 0 20px;background:#fff;border-bottom:1px solid #EBEBEB}
.ahx-nav__logo img{height:30px}.ahx-nav__links{display:none}.ahx-nav__r{display:flex;align-items:center;gap:6px}
.ahx-nav__yasi{width:44px;height:44px;display:flex;align-items:center;justify-content:center}.ahx-nav__yasi img{width:28px;height:28px;border-radius:50%;animation:ahxGlow 2.4s ease-in-out infinite}
.ahx-nav__burger{width:44px;height:44px;border:0;background:none;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;cursor:pointer}.ahx-nav__burger span{width:20px;height:2px;background:#111}
.ahx-nav__drawer{display:none;position:absolute;left:0;right:0;top:56px;background:#fff;border-bottom:1px solid #EBEBEB;padding:8px 20px 16px;flex-direction:column}.ahx-nav__drawer.is-open{display:flex}.ahx-nav__drawer a{padding:12px 0;font-size:17px;font-weight:600;border-bottom:1px solid #F2F2F2}
@keyframes ahxGlow{0%,100%{box-shadow:0 0 6px 1px rgba(128,55,255,.45)}50%{box-shadow:0 0 14px 4px rgba(128,55,255,.8)}}
/* hero */
.ahx-hero{background:#E4F1F5;display:flex;flex-direction:column-reverse}
.ahx-hero__media img{width:100%;height:auto}.ahx-hero__copy{padding-top:32px;padding-bottom:16px;display:flex;flex-direction:column;gap:14px}
/* press */
.ahx-press{padding-top:24px;padding-bottom:24px;border-bottom:1px solid #EBEBEB}.ahx-press__logos{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:20px 32px}.ahx-press__logos img{height:28px;width:auto;object-fit:contain}
/* cards */
.ahx-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:20px}.ahx-head--tight{margin-top:36px}
.ahx-cards{display:flex;gap:12px}.ahx-scroll{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 -20px;padding:0 20px}.ahx-scroll::-webkit-scrollbar{display:none}
.ahx-deal,.ahx-post{flex:0 0 280px;scroll-snap-align:start;display:flex;flex-direction:column;gap:12px}
.ahx-deal__img,.ahx-post__img{position:relative;display:block;height:200px;border-radius:18px;overflow:hidden;background:#E6E3FA}.ahx-deal__img img,.ahx-post__img img{width:100%;height:100%;object-fit:cover}
.ahx-go{position:absolute;left:12px;bottom:12px;display:flex;font-family:Poppins,sans-serif;font-size:12px;color:#fff;border-radius:999px;overflow:hidden;background:linear-gradient(90deg,#8950ED,#9C5DF4)}.ahx-go b{background:linear-gradient(90deg,#8138FD,#9C45E8);border-radius:999px;padding:8px 12px;font-weight:500}.ahx-go span{padding:8px 12px;font-weight:600}
.ahx-deal__row{display:flex;justify-content:space-between;gap:12px}.ahx-deal__loc{display:block;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#555}.ahx-deal__name{display:block;font-size:17px;font-weight:700;line-height:1.2}
.ahx-deal__price{text-align:right;flex:none;display:flex;flex-direction:column}.ahx-deal__price small{font-size:11px;color:#555}.ahx-deal__price b{font-size:20px}.ahx-deal__price s{font-size:12px;color:#777}
.ahx-post b{font-size:16px;line-height:1.25}
/* panels */
.ahx-panel{border-radius:22px;padding:28px 20px;display:flex;flex-direction:column;gap:18px}
.ahx-panel--pastel{background:radial-gradient(ellipse at 0% 0%,#C3C3E8 0%,rgba(195,195,232,0) 55%),radial-gradient(ellipse at 10% 100%,#F8D5C6 0%,rgba(248,213,198,0) 60%),linear-gradient(135deg,#D9D3EA 0%,#EADDE6 50%,#F3E6E6 100%)}
.ahx-panel--soft{background:linear-gradient(160deg,#E9E4FA 0%,#F3ECF4 55%,#F8E6E1 100%)}
.ahx-grid3,.ahx-grid2{display:grid;grid-template-columns:1fr;gap:12px}.ahx-tile{background:#fff;border-radius:18px;padding:18px}.ahx-tile b{font-size:17px}.ahx-tile p{margin:6px 0 0;font-size:14px;line-height:1.55;color:#333}.ahx-tile small{display:block;margin-top:6px;font-size:12px;color:#555}
.ahx-steplist{list-style:none;margin:0;padding:10px;background:#fff;border-radius:22px;display:flex;flex-direction:column}
.ahx-steplist li{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:12px;border-bottom:1px solid #F0F0F0}.ahx-steplist li:last-child{border:0}.ahx-steplist b{font-size:15px;font-weight:600}.ahx-steplist span{font-size:12px;color:#555;grid-column:1}
.ahx-steplist em{grid-row:1/3;grid-column:2;align-self:center;font-style:normal;font-weight:600;font-size:13px;background:#F2F2F2;border:1px solid #E8E8E8;border-radius:999px;padding:6px 10px}.ahx-steplist em.lav{background:#E6E3FA;color:#3B2A8C;border-color:#E6E3FA}
.ahx-logo-dark{height:32px;width:auto}.ahx-ticks{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.ahx-ticks li:before{content:"✓";display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-right:10px;border-radius:50%;background:#8037FF;color:#fff;font-size:12px}
.ahx-ast{color:#5420C8!important;font-weight:700}.ahx-split__img{border-radius:18px;object-fit:cover}
.ahx-review{flex:0 0 290px;scroll-snap-align:start;margin:0;border:1px solid #E4E4E4;border-radius:22px;padding:22px;display:flex;flex-direction:column;gap:12px}.ahx-review--lav{background:#F1EFFA;border-color:#F1EFFA}.ahx-review p{margin:0;font-size:15px;line-height:1.55;color:#333}.ahx-review cite{font-style:normal;font-weight:700;font-size:14px}
/* faq */
.ahx-faq{display:flex;flex-direction:column;gap:16px}.ahx-faq__list{border-top:1px solid #EBEBEB}
.ahx-faq details{border-bottom:1px solid #EBEBEB;padding:16px 0}.ahx-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:16px;font-size:16px;font-weight:700}.ahx-faq summary::-webkit-details-marker{display:none}.ahx-faq summary:after{content:"+";color:#8037FF;font-size:24px;font-weight:400;transition:transform .2s}.ahx-faq details[open] summary:after{transform:rotate(45deg)}.ahx-faq details p{margin:12px 0 0;font-size:15px;line-height:1.55;color:#333}
/* footer */
.ahx-footer{background:linear-gradient(160deg,#000 0%,#0B0B0F 60%,#1C1C22 100%);color:#fff;padding:40px 20px 32px;margin-top:40px}
.ahx-footer a{color:#fff!important}.ahx-footer__grid{display:grid;grid-template-columns:1fr 1fr;gap:28px 16px}.ahx-footer__brand{grid-column:1/-1}.ahx-footer__brand img{height:32px;width:auto}.ahx-footer__brand p{font-size:14px;line-height:1.55;color:#CFCFD8}
.ahx-footer h4{margin:0 0 10px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#8C8C99}.ahx-footer__grid>div>a{display:block;padding:6px 0;font-size:14px}
.ahx-footer__base{display:flex;flex-direction:column;gap:8px;margin-top:28px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);font-size:12px;color:#8C8C99}.ahx-footer__base a{color:#8C8C99!important}
/* yasi */
.ahx-yasi{position:fixed;right:12px;bottom:16px;z-index:50;display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.ahx-yasi__launch{border:0;background:none;padding:0;display:flex;align-items:center;cursor:pointer}.ahx-yasi.is-open .ahx-yasi__launch{display:none}
.ahx-yasi__orb{position:relative;width:48px;height:48px;flex:none}.ahx-yasi__orb img{width:100%;height:100%;animation:ahxFloat 3.2s ease-in-out infinite,ahxOrb 2.6s ease-in-out infinite}
.ahx-yasi__pill{margin-left:-14px;height:32px;padding:0 14px 0 22px;border-radius:999px;background:linear-gradient(120deg,#1B0B45,#2A1164);color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center}
@keyframes ahxFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes ahxOrb{0%,100%{filter:drop-shadow(0 0 6px rgba(160,90,255,.55))}50%{filter:drop-shadow(0 0 16px rgba(190,120,255,.95))}}
.ahx-yasi__panel{width:min(340px,calc(100vw - 24px));height:min(560px,calc(100vh - 120px));background:#F7F5FC;border-radius:22px;box-shadow:0 24px 60px rgba(27,11,69,.28);display:flex;flex-direction:column;overflow:hidden}
.ahx-yasi__panel[hidden]{display:none}.ahx-yasi__panel header{display:flex;align-items:center;gap:12px;padding:12px;background:linear-gradient(120deg,#1B0B45,#3A1792);color:#fff}.ahx-yasi__panel header .ahx-yasi__orb{width:38px;height:38px}.ahx-yasi__panel header div{flex:1;display:flex;flex-direction:column}.ahx-yasi__panel header small{font-size:11px;color:#E3D9FF}.ahx-yasi__panel header button{width:40px;height:40px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;font-size:18px;cursor:pointer}
.ahx-yasi__body{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px}.ahx-msg{max-width:80%;padding:10px 14px;font-size:13px;line-height:1.5;border-radius:16px}.ahx-msg--bot{align-self:flex-start;background:linear-gradient(120deg,#EFE8FF,#F8E6F0);border-radius:16px 16px 16px 4px}.ahx-msg--me{align-self:flex-end;background:#8037FF;color:#fff;border-radius:16px 16px 4px 16px}
.ahx-yasi__chips{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px 12px}.ahx-yasi__chips button{min-height:34px;padding:6px 12px;border-radius:999px;border:1px solid #D9CCFF;background:#fff;color:#5420C8;font:600 12px 'Schibsted Grotesk',sans-serif;cursor:pointer}
.ahx-yasi__panel form{display:flex;gap:8px;padding:12px;background:#fff;border-top:1px solid #ECE8FA}.ahx-yasi__panel input{flex:1;min-width:0;height:44px;border:1.5px solid #8037FF;border-radius:999px;padding:0 14px;font-size:16px;font-family:inherit}.ahx-yasi__panel form button{width:44px;height:44px;border-radius:50%;border:0;background:#8037FF;color:#fff;font-size:18px;cursor:pointer}
.ahx-yasi__note{margin:0;padding:0 12px 10px;background:#fff;font-size:11px;color:#777;text-align:center}
/* search */
.ahx-search-wrap{position:relative;z-index:5;margin-top:-8px}
.ahx-search{background:#fff;border-radius:20px;box-shadow:0 12px 32px rgba(17,17,17,.12);padding:12px;display:flex;flex-direction:column;gap:8px}
.ahx-search label,.ahx-search__guests>button{display:flex;flex-direction:column;gap:2px;border:1px solid #E4E4E4;border-radius:14px;padding:8px 14px;background:#fff;text-align:left;min-width:0;font:inherit;color:#111;cursor:pointer}
.ahx-search b{font-size:13px}.ahx-search input,.ahx-search select{border:0;outline:none;padding:0;font:16px 'Schibsted Grotesk',sans-serif;background:transparent;min-width:0;color:#111}
.ahx-search__q{flex-direction:row!important;align-items:center;gap:10px!important;border:2px solid #8037FF!important}.ahx-search__q img{width:28px;height:28px;border-radius:50%;animation:ahxGlow 2.4s ease-in-out infinite}.ahx-search__q span{display:flex;flex-direction:column;flex:1;min-width:0}
.ahx-search__dates{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ahx-search__guests{position:relative}.ahx-search__guests>button{width:100%;height:100%}
.ahx-guests{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:10;background:#fff;border-radius:18px;box-shadow:0 20px 50px rgba(17,17,17,.18);padding:16px;display:flex;flex-direction:column;gap:12px}.ahx-guests[hidden]{display:none}
.ahx-guests__row{display:flex;justify-content:space-between;align-items:center}.ahx-guests__row small{display:block;font-size:12px;color:#555}
.ahx-step{display:flex;align-items:center;gap:12px}.ahx-step button{width:40px;height:40px;border-radius:50%;border:1px solid #CFCFD6;background:#fff;font-size:18px;cursor:pointer}.ahx-step output{min-width:16px;text-align:center;font-weight:700}
.ahx-guests__ages{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ahx-guests__ages label{font-size:12px;font-weight:600;padding:6px 10px}.ahx-guests__ages.is-missing select:invalid,.ahx-guests__ages.is-missing label{border-color:#E88A68}
.ahx-search__go{height:52px}
/* hot deals */
.ahx-eyebrow--sale{color:#D24E26}
.ahx-hotcard{flex:0 0 280px;scroll-snap-align:start;display:flex;flex-direction:column;border:1px solid #E4E4E4;border-radius:20px;overflow:hidden;background:#fff}
.ahx-hotcard__img{position:relative;display:block;height:170px;background:#E6E3FA}.ahx-hotcard__img img{width:100%;height:100%;object-fit:cover}
.ahx-sale{position:absolute;left:12px;top:12px;background:#D24E26;color:#fff;border-radius:999px;padding:5px 10px;font-size:13px;font-weight:700}
.ahx-hotcard__body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px}.ahx-hotcard__price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.ahx-hotcard__price b{font-size:22px}.ahx-hotcard__price s{font-size:14px;color:#777}.ahx-hotcard__price small{font-size:13px;color:#555}.ahx-hotcard__note{font-size:13px;font-weight:600;color:#5420C8}
/* desktop */
@media (min-width:900px){
  .ahx-wrap{padding:0 56px}.ahx-section{padding-top:72px;padding-bottom:72px}.ahx-eyebrow{font-size:13px}.ahx-lead{font-size:18px}
  .ahx-utility{display:flex;justify-content:space-between;align-items:center;height:40px;padding:0 56px;background:#F7F6FC;border-bottom:1px solid #ECE8FA;font-size:13px;color:#333}.ahx-utility__r{display:flex;gap:24px;align-items:center}.ahx-utility__r a{font-weight:600}.ahx-utility__yasi{display:flex;align-items:center;gap:8px;color:#5420C8!important}.ahx-utility__yasi img{width:24px;height:24px;border-radius:50%;animation:ahxGlow 2.4s ease-in-out infinite}
  .ahx-nav{height:72px;padding:0 56px}.ahx-nav__logo img{height:40px}.ahx-nav__links{display:flex;gap:28px;font-size:15px;font-weight:500;align-self:stretch}.ahx-nav__links a{display:flex;align-items:center}.ahx-nav__links a.is-active{color:#5420C8;font-weight:700;box-shadow:inset 0 -2px 0 #8037FF}
  .ahx-nav__burger,.ahx-nav__yasi,.ahx-nav__drawer{display:none!important}
  .ahx-hero{position:relative;flex-direction:row;min-height:640px}.ahx-hero__media{position:absolute;right:0;top:0;height:100%}.ahx-hero__media img{height:100%;width:auto}.ahx-hero__copy{position:relative;max-width:680px;margin:0;padding:80px 56px;justify-content:center;background:linear-gradient(90deg,#E4F1F5 70%,rgba(228,241,245,0))}
  .ahx-press{display:flex;align-items:center;gap:48px}.ahx-press .ahx-eyebrow{margin:0;flex:none}.ahx-press__logos{flex:1;justify-content:space-between}.ahx-press__logos img{height:56px}
  .ahx-scroll{overflow:visible;margin:0;padding:0}.ahx-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 24px}.ahx-deal__img{height:280px}.ahx-post__img{height:260px}.ahx-deal__name{font-size:20px}.ahx-deal__price b{font-size:23px}
  .ahx-panel{border-radius:28px;padding:48px 56px}.ahx-grid3{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.ahx-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
  .ahx-steps{display:grid;grid-template-columns:1fr 460px;gap:48px;align-items:center}.ahx-steplist b{font-size:19px}.ahx-steplist span{font-size:14px}
  .ahx-split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.ahx-logo-dark{height:44px}
  .ahx-faq{display:grid;grid-template-columns:1fr 2fr;gap:48px}.ahx-faq__list{border:1px solid #E4E4E4;border-radius:20px;padding:0 28px}.ahx-faq details:last-child{border:0}.ahx-faq summary{font-size:18px}
  .ahx-review{flex:1}
  .ahx-footer{padding:72px 56px 40px}.ahx-footer__grid{grid-template-columns:1.6fr 1fr 1fr 1fr;gap:48px}.ahx-footer__brand{grid-column:auto}.ahx-footer__base{flex-direction:row;justify-content:space-between}
  .ahx-yasi{right:24px;bottom:24px}
  .ahx-search-wrap{margin-top:-64px}.ahx-search{flex-direction:row;padding:14px;border-radius:22px}.ahx-search__q{flex:1.6}.ahx-search__dates{flex:1}.ahx-search__guests{flex:.8}.ahx-search__go{padding:0 34px;height:auto}
  .ahx-guests{left:auto;width:340px}
  .ahx-hero{min-height:500px}.ahx-hero__copy{padding-bottom:120px}
  .ahx-cards--4{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:20px!important}.ahx-hotcard__img{height:200px}
}
