/*
Theme Name: Ears To Adventure 1.2.5 Service Trip Type
Theme URI: https://earstoadventure.com/
Author: Ears To Adventure
Description: A custom mobile-first WordPress theme for a Disney and theme-park travel planning agency.
Version: 1.2.5
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
Text Domain: ears-to-adventure
*/

:root{
  --eta-navy:#092a43;--eta-navy-2:#071e31;--eta-blue:#174f78;--eta-gold:#f4c542;--eta-gold-2:#dfa928;--eta-cream:#fff8e7;--eta-white:#fff;--eta-ink:#122033;--eta-muted:#5d6b7a;--eta-card:#ffffff;--eta-sky:#e9f5ff;--eta-shadow:0 18px 50px rgba(7,30,49,.14);--eta-radius:24px;--eta-radius-sm:16px;--eta-max:1160px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--eta-ink);background:linear-gradient(180deg,#fff 0%,#fff8e7 55%,#fff 100%);font-size:16px;line-height:1.6}a{color:inherit}img{max-width:100%;height:auto}.screen-reader-text{position:absolute;left:-9999px}.wrap{width:min(var(--eta-max),calc(100% - 32px));margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(9,42,67,.08)}.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:74px}.brand{display:flex;align-items:center;text-decoration:none;color:var(--eta-navy);min-width:0;line-height:1}.eta-default-logo,.custom-logo{display:block;width:min(260px,70vw);height:auto;object-fit:contain}.site-header .eta-default-logo{max-height:none}.brand{flex:0 1 auto}.nav{min-height:112px;align-items:center}.site-header{overflow:visible}.brand-footer .eta-default-logo,.brand-footer .custom-logo{filter:none;background:#fff;border-radius:18px;padding:8px;width:min(360px,82vw);max-height:none}.menu-toggle{border:0;background:var(--eta-navy);color:#fff;border-radius:999px;padding:10px 13px;font-weight:900}.primary-menu{display:none;position:absolute;left:16px;right:16px;top:78px;background:#fff;border-radius:22px;box-shadow:var(--eta-shadow);padding:12px;list-style:none;margin:0}.primary-menu.is-open{display:block}.primary-menu a{display:block;text-decoration:none;padding:13px 14px;border-radius:14px;font-weight:800;color:var(--eta-navy)}.primary-menu a:hover{background:var(--eta-sky)}.desktop-cta{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:13px 18px;border-radius:999px;font-weight:900;text-decoration:none;border:2px solid transparent;box-shadow:0 10px 24px rgba(9,42,67,.12)}.btn-primary{background:linear-gradient(135deg,var(--eta-gold),var(--eta-gold-2));color:var(--eta-navy)}.btn-secondary{background:#fff;color:var(--eta-navy);border-color:rgba(9,42,67,.14)}.btn-dark{background:var(--eta-navy);color:#fff}.hero{position:relative;overflow:hidden;padding:34px 0 28px;background:radial-gradient(circle at 80% 10%,rgba(244,197,66,.28),transparent 28%),linear-gradient(180deg,#fff,#fff8e7)}.hero-grid{display:grid;gap:24px}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--eta-navy);font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.11em;background:rgba(244,197,66,.23);padding:8px 12px;border-radius:999px}.hero h1{font-size:clamp(2.25rem,12vw,4.75rem);line-height:.95;margin:18px 0 14px;letter-spacing:-.07em;color:var(--eta-navy)}.lead{font-size:1.08rem;color:#30445a;margin:0 0 20px}.hero-actions{display:grid;gap:10px}.trust-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.pill{font-size:13px;font-weight:800;color:var(--eta-navy);background:#fff;border:1px solid rgba(9,42,67,.12);padding:8px 10px;border-radius:999px}.hero-card{position:relative;background:linear-gradient(160deg,var(--eta-navy),var(--eta-blue));border-radius:32px;color:#fff;padding:22px;box-shadow:var(--eta-shadow);overflow:hidden;min-height:310px}.coaster{height:132px;margin:-6px -8px 0}.hero-card h2{margin:12px 0 8px;font-size:1.35rem;line-height:1.1}.hero-icons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.icon-card{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:14px;font-weight:800}.section{padding:42px 0}.section-title{font-size:clamp(1.8rem,7vw,3.2rem);line-height:1.02;letter-spacing:-.055em;margin:0 0 10px;color:var(--eta-navy)}.section-sub{margin:0 0 22px;color:var(--eta-muted);font-size:1.04rem}.cards{display:grid;gap:16px}.card{background:var(--eta-card);border:1px solid rgba(9,42,67,.09);border-radius:var(--eta-radius);padding:22px;box-shadow:0 12px 34px rgba(9,42,67,.08)}.card h3{color:var(--eta-navy);font-size:1.25rem;line-height:1.1;margin:0 0 8px}.card p{margin:0;color:#46576b}.card ul{padding-left:20px;margin:12px 0 0}.feature-icon{width:46px;height:46px;border-radius:16px;background:var(--eta-cream);display:flex;align-items:center;justify-content:center;color:var(--eta-navy);font-size:24px;margin-bottom:14px}.split{display:grid;gap:20px;align-items:center}.panel-dark{background:linear-gradient(160deg,var(--eta-navy),var(--eta-blue));color:#fff;border-radius:32px;padding:24px;box-shadow:var(--eta-shadow)}.panel-dark .section-title,.panel-dark h2,.panel-dark h3{color:#fff}.panel-dark p{color:rgba(255,255,255,.84)}.steps{counter-reset:step;display:grid;gap:14px}.step{display:flex;gap:14px;align-items:flex-start;background:#fff;border-radius:22px;padding:16px;border:1px solid rgba(9,42,67,.08)}.step:before{counter-increment:step;content:counter(step);flex:0 0 36px;width:36px;height:36px;border-radius:50%;background:var(--eta-gold);color:var(--eta-navy);display:grid;place-items:center;font-weight:900}.testimonial{font-size:1.05rem;color:var(--eta-navy)}.testimonial cite{display:block;margin-top:10px;color:var(--eta-muted);font-style:normal;font-weight:800}.faq-item{border-bottom:1px solid rgba(9,42,67,.1)}.faq-q{width:100%;display:flex;justify-content:space-between;gap:18px;text-align:left;border:0;background:transparent;padding:18px 0;font-weight:900;color:var(--eta-navy);font-size:1rem}.faq-a{display:none;padding:0 0 18px;color:#46576b}.faq-item.is-open .faq-a{display:block}.cta-band{background:linear-gradient(135deg,var(--eta-navy),#0f4771);color:#fff;border-radius:34px;padding:28px;position:relative;overflow:hidden}.cta-band h2{font-size:clamp(1.7rem,7vw,3rem);line-height:1;margin:0 0 12px;letter-spacing:-.05em}.cta-band p{color:rgba(255,255,255,.82);margin:0 0 18px}.site-footer{background:var(--eta-navy-2);color:#fff;padding:42px 0 92px}.footer-grid{display:grid;gap:24px}.footer-links{display:grid;gap:8px}.footer-links a{color:rgba(255,255,255,.82);text-decoration:none}.legal-note{font-size:13px;color:rgba(255,255,255,.58);margin-top:22px}.mobile-sticky{display:none!important}.mobile-sticky .btn{min-height:44px;padding:10px 12px;font-size:14px}.page-hero{padding:38px 0 28px;background:radial-gradient(circle at 80% 10%,rgba(244,197,66,.24),transparent 30%),var(--eta-cream)}.page-hero h1{font-size:clamp(2.1rem,10vw,4.25rem);line-height:.98;color:var(--eta-navy);letter-spacing:-.065em;margin:10px 0}.content{background:#fff;border-radius:26px;padding:22px;box-shadow:0 12px 34px rgba(9,42,67,.06)}.content h2,.content h3{color:var(--eta-navy);letter-spacing:-.03em}.service-price{font-size:2rem;font-weight:950;color:var(--eta-navy);letter-spacing:-.05em}.form-shell{background:#fff;border-radius:26px;padding:20px;border:1px solid rgba(9,42,67,.09);box-shadow:0 12px 34px rgba(9,42,67,.06)}input,textarea,select{width:100%;border:1px solid rgba(9,42,67,.18);border-radius:14px;padding:13px 14px;font:inherit;margin:6px 0 14px}label{font-weight:850;color:var(--eta-navy)}button,input[type=submit]{cursor:pointer}.wp-block-post-title{color:var(--eta-navy)}
@media(min-width:760px){.hero-actions{display:flex}.cards{grid-template-columns:repeat(3,1fr)}.cards.two{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.hero{padding:74px 0 60px}.hero-grid{grid-template-columns:1.05fr .95fr;align-items:center}.hero-card{min-height:440px;padding:30px}.coaster{height:180px}.section{padding:70px 0}.mobile-sticky{display:none}.site-footer{padding-bottom:48px}}
@media(min-width:980px){.nav{min-height:126px}.menu-toggle{display:none}.primary-menu{position:static;display:flex;align-items:center;gap:4px;background:transparent;border-radius:0;box-shadow:none;padding:0}.primary-menu a{font-size:14px;padding:9px 10px}.desktop-cta{display:inline-flex}.eta-default-logo,.custom-logo{width:390px;max-height:none}}


/* v1.0.2 forced-logo patch: do not allow old WP custom-logo dimensions to control the header. */
.brand{flex:0 1 auto;}
.eta-default-logo{width:clamp(235px,52vw,365px) !important;max-height:76px !important;height:auto !important;}
.site-header .nav{min-height:82px;}
@media(max-width:520px){.wrap{width:min(var(--eta-max),calc(100% - 20px));}.nav{gap:8px;min-height:72px}.eta-default-logo{width:clamp(218px,68vw,292px) !important;max-height:62px !important;}.menu-toggle{padding:9px 11px;font-size:13px}}

@media(max-width:640px){.nav{min-height:104px}.eta-default-logo,.custom-logo{width:min(230px,68vw)}.primary-menu{top:108px}.desktop-cta{display:none}}


/* v1.0.4 header wordmark logo patch */
.site-header .nav{min-height:86px;}
.site-header .brand{flex:0 1 auto;max-width:calc(100vw - 118px);}
.eta-default-logo{display:block;width:clamp(285px,38vw,430px) !important;max-width:100% !important;max-height:78px !important;height:auto !important;object-fit:contain;}
.brand-footer .eta-default-logo{width:min(430px,86vw) !important;max-height:none !important;background:transparent !important;padding:0 !important;}
@media(max-width:640px){.site-header .nav{min-height:76px;gap:8px}.site-header .brand{max-width:calc(100vw - 104px)}.eta-default-logo{width:clamp(250px,72vw,320px) !important;max-height:62px !important}.primary-menu{top:78px}.menu-toggle{padding:9px 11px;font-size:13px}}
@media(max-width:390px){.eta-default-logo{width:248px !important;}.site-header .brand{max-width:248px}.menu-toggle{font-size:12px;padding:8px 9px}}
@media(min-width:980px){.site-header .nav{min-height:94px}.eta-default-logo{width:430px !important;max-height:80px !important}.primary-menu a{font-size:13px;padding:8px 8px}.desktop-cta{min-height:44px;padding:10px 14px}}


/* v1.0.5: rotating photo hero card */
.hero-photo-card{
  position:relative;
  min-height:320px;
  border-radius:32px;
  overflow:hidden;
  box-shadow:var(--eta-shadow);
  background:var(--eta-navy);
  border:1px solid rgba(9,42,67,.08);
}
.hero-photo-card img{
  width:100%;
  height:100%;
  min-height:320px;
  display:block;
  object-fit:cover;
  object-position:center;
}
.hero-photo-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(9,42,67,.04) 0%,rgba(9,42,67,.08) 42%,rgba(9,42,67,.62) 100%);
  pointer-events:none;
}
.hero-photo-badge{
  position:absolute;
  left:16px;
  right:16px;
  bottom:16px;
  z-index:2;
  color:#fff;
  background:rgba(9,42,67,.78);
  border:1px solid rgba(255,255,255,.2);
  backdrop-filter:blur(10px);
  border-radius:22px;
  padding:16px;
}
.hero-photo-badge h2{
  margin:0 0 5px;
  font-size:1.18rem;
  line-height:1.08;
  letter-spacing:-.035em;
}
.hero-photo-badge p{
  margin:0;
  color:rgba(255,255,255,.88);
  font-size:.94rem;
  line-height:1.45;
}
@media(min-width:760px){
  .hero-photo-card{min-height:440px;}
  .hero-photo-card img{min-height:440px;}
  .hero-photo-badge{left:22px;right:22px;bottom:22px;padding:18px 20px;}
  .hero-photo-badge h2{font-size:1.45rem;}
}
@media(max-width:759px){
  .hero-photo-card{border-radius:28px;}
}

/* v1.0.6: larger, softer, centered hero photo text overlay */
.hero-photo-badge{
  left:50% !important;
  right:auto !important;
  bottom:auto !important;
  top:58% !important;
  transform:translate(-50%,-50%);
  width:min(88%,540px);
  padding:24px 26px !important;
  background:rgba(9,42,67,.66) !important;
  border:1px solid rgba(255,255,255,.28) !important;
  box-shadow:0 18px 44px rgba(7,30,49,.26);
  text-align:left;
}
.hero-photo-badge h2{
  font-size:clamp(1.35rem,3.4vw,1.9rem) !important;
  margin-bottom:8px !important;
}
.hero-photo-badge p{
  font-size:clamp(1rem,2.3vw,1.12rem) !important;
  line-height:1.48 !important;
}
@media(max-width:759px){
  .hero-photo-badge{
    top:61% !important;
    width:calc(100% - 44px);
    padding:20px 22px !important;
    border-radius:24px;
  }
}
@media(max-width:430px){
  .hero-photo-badge{
    top:62% !important;
    width:calc(100% - 32px);
    padding:18px 20px !important;
  }
}


/* v1.0.7: make hero text panel larger, more centered, and more transparent */
.hero-photo-badge{
  top:50% !important;
  left:50% !important;
  transform:translate(-50%,-50%) !important;
  width:min(92%,620px) !important;
  min-height:210px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:34px 38px !important;
  background:rgba(9,42,67,.46) !important;
  border:1px solid rgba(255,255,255,.34) !important;
  border-radius:28px !important;
  box-shadow:0 20px 52px rgba(7,30,49,.22) !important;
  backdrop-filter:blur(8px) saturate(115%);
  -webkit-backdrop-filter:blur(8px) saturate(115%);
}
.hero-photo-badge h2{
  font-size:clamp(1.8rem,4.2vw,2.7rem) !important;
  line-height:1.03 !important;
  margin:0 0 12px !important;
  max-width:10.5em;
}
.hero-photo-badge p{
  font-size:clamp(1.08rem,2.5vw,1.32rem) !important;
  line-height:1.45 !important;
  max-width:24em;
}
@media(max-width:759px){
  .hero-photo-badge{
    top:50% !important;
    width:calc(100% - 36px) !important;
    min-height:230px;
    padding:28px 26px !important;
    background:rgba(9,42,67,.44) !important;
  }
  .hero-photo-badge h2{
    font-size:clamp(1.75rem,8vw,2.35rem) !important;
  }
  .hero-photo-badge p{
    font-size:clamp(1.05rem,4.2vw,1.22rem) !important;
  }
}
@media(max-width:430px){
  .hero-photo-badge{
    width:calc(100% - 28px) !important;
    min-height:235px;
    padding:26px 24px !important;
  }
}


/* v1.0.8 footer logo visibility patch */
.site-footer .brand-footer{
  display:inline-flex;
  align-items:center;
  width:auto;
  max-width:100%;
  background:linear-gradient(135deg,#ffffff 0%,#fff8e7 100%);
  border:1px solid rgba(244,197,66,.35);
  border-radius:24px;
  padding:10px 14px;
  margin:0 0 18px;
  box-shadow:0 18px 45px rgba(0,0,0,.22);
}
.site-footer .brand-footer .eta-default-logo,
.site-footer .brand-footer .custom-logo{
  display:block;
  width:min(430px,82vw) !important;
  max-height:96px !important;
  height:auto !important;
  background:transparent !important;
  padding:0 !important;
  filter:none !important;
  object-fit:contain;
}
.site-footer p{max-width:520px;}
@media(max-width:640px){
  .site-footer .brand-footer{border-radius:20px;padding:9px 11px;}
  .site-footer .brand-footer .eta-default-logo,
  .site-footer .brand-footer .custom-logo{width:min(335px,88vw) !important;max-height:82px !important;}
}


/* v1.0.9 trip inquiry form */
.inquiry-layout{align-items:start;}
.eta-trip-form,.eta-form-success,.eta-form-error{
  background:linear-gradient(180deg,#ffffff 0%,#fffaf0 100%);
  border:1px solid rgba(244,197,66,.36);
  border-radius:28px;
  padding:clamp(20px,4vw,34px);
  box-shadow:0 22px 60px rgba(7,30,49,.13);
}
.eta-trip-form label{display:block;font-weight:800;color:#092a43;margin:0 0 16px;}
.eta-trip-form input,.eta-trip-form select,.eta-trip-form textarea{
  width:100%;margin-top:8px;border:1px solid rgba(9,42,67,.20);border-radius:16px;padding:13px 14px;font:inherit;background:#fff;color:#092a43;
}
.eta-trip-form textarea{resize:vertical;}
.form-grid.two{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.eta-trip-form fieldset{border:1px solid rgba(9,42,67,.16);border-radius:20px;padding:16px;margin:0 0 18px;background:rgba(255,255,255,.62);}
.eta-trip-form legend{font-weight:900;color:#092a43;padding:0 8px;}
.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;margin-top:8px;}
.check-grid label{margin:0;font-weight:700;display:flex;gap:8px;align-items:center;}
.check-grid input{width:auto;margin:0;}
.microcopy{font-size:.9rem;opacity:.76;margin-top:12px;}
.eta-form-success{text-align:center;max-width:760px;margin:0 auto;}
.eta-form-success h2{font-size:clamp(2rem,5vw,3rem);line-height:1.05;margin:8px 0 12px;}
.eta-form-success .btn{margin-top:12px;}
.eta-form-error{border-color:#cc3333;background:#fff1f1;color:#7b1515;font-weight:800;margin-bottom:18px;}
.cal-shortcode-note,.cal-after-box{margin-top:18px;background:rgba(9,42,67,.06);border:1px dashed rgba(9,42,67,.22);border-radius:18px;padding:14px;text-align:left;}
@media(max-width:760px){
  .form-grid.two,.check-grid{grid-template-columns:1fr;}
  .eta-trip-form,.eta-form-success{border-radius:22px;padding:20px;}
  .eta-trip-form input,.eta-trip-form select,.eta-trip-form textarea{font-size:16px;}
}


/* v1.1.1 Cal.com embeds */
.eta-cal-embed{width:100%;min-height:560px}
.eta-cal-inline{overflow:hidden;border-radius:22px;background:#fff}
.eta-cal-placeholder{min-height:360px;display:flex;flex-direction:column;justify-content:center;gap:10px;text-align:center;border:2px dashed rgba(9,42,67,.18);background:rgba(255,248,231,.55);padding:22px}
.shortcode-note code{display:block;white-space:normal;word-break:break-word;text-align:left;background:#fff;border:1px solid rgba(9,42,67,.12);border-radius:14px;padding:12px;color:var(--eta-navy);font-size:12px}
.eta-cal-floating{position:relative;z-index:80}
@media(max-width:759px){.eta-cal-embed{min-height:640px}.cal-after-box{padding:10px}.eta-cal-floating{z-index:75}}


/* v1.1.3: cleaner inquiry page, kids ages, visible schedule button fallback */
.inquiry-form-only{max-width:860px;margin:0 auto}
.centered-copy{text-align:center;margin:0 auto 24px;max-width:720px}
.inquiry-form-only .eta-trip-form,.inquiry-form-only .eta-form-success{max-width:860px;margin-left:auto;margin-right:auto}
.optional{font-weight:600;font-size:.82em;opacity:.7}
.eta-cal-floating{position:fixed;right:18px;bottom:92px;z-index:9999}
.eta-floating-schedule-fallback{display:inline-flex;align-items:center;justify-content:center;padding:14px 18px;border-radius:999px;background:#D9A441;color:#10243e;font-weight:900;text-decoration:none;box-shadow:0 16px 38px rgba(0,0,0,.24);border:2px solid rgba(255,255,255,.75)}
.eta-cal-floating:not(.eta-cal-floating-fallback) .eta-floating-schedule-fallback{display:none}
@media(max-width:759px){.eta-cal-floating{right:14px;bottom:96px}.eta-floating-schedule-fallback{padding:12px 15px;font-size:.92rem}}

/* v1.1.4: reliable hard-rendered floating schedule button */
.eta-floating-schedule-button{
  position:fixed;
  right:18px;
  bottom:92px;
  z-index:2147483000;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:14px 20px;
  border-radius:999px;
  background:linear-gradient(135deg,#F4C542,#D9A441);
  color:#092A43 !important;
  font-weight:950;
  line-height:1;
  text-decoration:none !important;
  box-shadow:0 18px 44px rgba(7,30,49,.28);
  border:2px solid rgba(255,255,255,.88);
}
.eta-floating-schedule-button:hover{
  transform:translateY(-1px);
  box-shadow:0 20px 52px rgba(7,30,49,.34);
}
@media(max-width:759px){
  .eta-floating-schedule-button{
    right:14px;
    bottom:92px;
    min-height:46px;
    padding:12px 15px;
    font-size:.92rem;
  }
}
@media(max-width:430px){
  .eta-floating-schedule-button{
    right:12px;
    bottom:90px;
    font-size:.88rem;
  }
}
body.page-slug-book-free-call .eta-floating-schedule-button,
body.page-slug-schedule-a-free-call .eta-floating-schedule-button{display:none !important;}


/* v1.1.7: compact floating Start Planning CTA on mobile and desktop */
.eta-floating-schedule-button,
.eta-cal-floating,
.eta-floating-schedule-fallback{
  display:none !important;
}
.eta-floating-start-button{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:10000;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  width:auto;
  max-width:calc(100vw - 32px);
  padding:12px 18px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--eta-navy),var(--eta-blue));
  color:var(--eta-gold) !important;
  font-weight:950;
  text-decoration:none !important;
  letter-spacing:.01em;
  border:2px solid rgba(255,255,255,.86);
  box-shadow:0 14px 34px rgba(7,30,49,.25);
}
.eta-floating-start-button:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 42px rgba(7,30,49,.32);
}
@media(max-width:759px){
  .eta-floating-start-button{
    left:auto;
    right:14px;
    bottom:14px;
    min-height:42px;
    padding:10px 16px;
    font-size:.92rem;
    box-shadow:0 12px 28px rgba(7,30,49,.26);
  }
}
body.page-slug-trip-inquiry .eta-floating-start-button{display:none !important;}


/* v1.1.8 targeted landing pages */
.niche-hero { position: relative; overflow: hidden; border-radius: 32px; min-height: 430px; display: grid; align-items: end; background: linear-gradient(135deg, rgba(5,39,61,.92), rgba(5,39,61,.62)), var(--niche-img); background-size: cover; background-position: center; box-shadow: 0 24px 70px rgba(5,39,61,.18); }
.niche-hero.access { --niche-img: url('assets/img/hero-disney.jpg'); }
.niche-hero.adults { --niche-img: url('assets/img/hero-universal.jpeg'); }
.niche-hero.budget { --niche-img: url('assets/img/hero-disney.jpg'); }
.niche-hero-inner { max-width: 780px; padding: clamp(28px, 5vw, 58px); color: #fff; }
.niche-hero .eyebrow { color: var(--gold); background: rgba(255,255,255,.13); border: 1px solid rgba(255,255,255,.2); }
.niche-hero h1 { color:#fff; font-size: clamp(2.25rem, 7vw, 4.6rem); line-height: .94; margin: 16px 0; letter-spacing: -.055em; }
.niche-hero p { color: rgba(255,255,255,.94); font-size: clamp(1.05rem, 2.2vw, 1.28rem); max-width: 640px; }
.niche-proof { display:grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 24px; }
.niche-proof span { background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.22); border-radius: 999px; padding: 10px 14px; color:#fff; font-weight:800; font-size:.92rem; text-align:center; }
.landing-layout { display:grid; grid-template-columns: minmax(0, 1.1fr) minmax(300px, .9fr); gap: 28px; align-items:start; }
.landing-sidebar { position: sticky; top: 96px; }
.landing-cta-card { background: linear-gradient(160deg, var(--navy), #0e4568); color:#fff; border-radius: 28px; padding: 28px; box-shadow: 0 18px 42px rgba(5,39,61,.2); }
.landing-cta-card h3 { color:#fff; font-size:1.55rem; margin-bottom:10px; }
.landing-cta-card p { color: rgba(255,255,255,.88); }
.landing-cta-card .btn { width:100%; justify-content:center; margin-top:16px; }
.landing-section-title { font-size: clamp(1.85rem, 3.4vw, 3rem); line-height:1; letter-spacing:-.04em; margin-bottom: 12px; }
.benefit-list { display:grid; gap: 14px; margin: 20px 0 0; padding:0; list-style:none; }
.benefit-list li { background:#fff; border:1px solid rgba(5,39,61,.08); border-radius:20px; padding:18px; box-shadow:0 10px 30px rgba(5,39,61,.06); }
.benefit-list strong { color: var(--navy); display:block; margin-bottom:4px; }
.landing-band { background: var(--cream-2); border-radius: 30px; padding: clamp(24px,4vw,42px); border:1px solid rgba(5,39,61,.07); }
.compare-grid { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:18px; }
.compare-card { background:#fff; border-radius:24px; padding:24px; border:1px solid rgba(5,39,61,.08); }
.compare-card h3 { margin-bottom:10px; }
.mini-faq { display:grid; gap:12px; }
.mini-faq details { background:#fff; border-radius:18px; padding:16px 18px; border:1px solid rgba(5,39,61,.08); }
.mini-faq summary { cursor:pointer; font-weight:900; color:var(--navy); }
.stock-note { font-size:.84rem; opacity:.7; margin-top:10px; }
@media (max-width: 860px){
 .niche-hero{ min-height: 520px; border-radius: 0 0 30px 30px; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
 .niche-proof{ grid-template-columns:1fr; }
 .landing-layout{ grid-template-columns:1fr; }
 .landing-sidebar{ position:static; }
 .compare-grid{ grid-template-columns:1fr; }
 .landing-cta-card .btn{ width:auto; }
}


/* v1.2.0: campaign-style landing pages that feel more like ad experiences than standard web pages */
.campaign-main{
  background:
    radial-gradient(circle at 12% 10%, rgba(244,197,66,.28), transparent 28%),
    radial-gradient(circle at 88% 18%, rgba(23,79,120,.18), transparent 32%),
    linear-gradient(180deg,#fffaf0 0%,#f7fbff 52%,#fff8e7 100%);
  overflow:hidden;
}
.campaign-stage{position:relative;padding:clamp(26px,5vw,64px) 0 34px;}
.campaign-bg-orbit{position:absolute;inset:14px auto auto 50%;width:min(980px,96vw);height:340px;transform:translateX(-50%);border-top:8px solid rgba(244,197,66,.34);border-radius:50% 50% 0 0;pointer-events:none;filter:blur(.2px)}
.campaign-shell{position:relative;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(310px,.88fr);grid-template-areas:"copy visual" "chips visual";gap:20px;align-items:stretch;}
.campaign-copy-card,.campaign-visual-card,.campaign-story-card,.campaign-route-card,.campaign-benefit-card,.campaign-final-card{border:1px solid rgba(9,42,67,.10);box-shadow:0 20px 60px rgba(7,30,49,.12)}
.campaign-copy-card{grid-area:copy;background:rgba(255,255,255,.82);backdrop-filter:blur(18px);border-radius:34px;padding:clamp(24px,4vw,48px);position:relative;overflow:hidden;}
.campaign-copy-card:before{content:"";position:absolute;right:-70px;bottom:-110px;width:260px;height:260px;border-radius:50%;background:rgba(244,197,66,.22)}
.campaign-eyebrow,.campaign-mini{display:inline-flex;color:var(--eta-navy);background:rgba(244,197,66,.28);border:1px solid rgba(244,197,66,.55);border-radius:999px;padding:8px 12px;font-size:.76rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.campaign-copy-card h1{position:relative;color:var(--eta-navy);font-size:clamp(2.55rem,6.5vw,5.8rem);line-height:.89;letter-spacing:-.075em;margin:18px 0 18px;max-width:860px;}
.campaign-lead{position:relative;color:#2c4358;font-size:clamp(1.08rem,2vw,1.32rem);line-height:1.45;max-width:760px;margin:0 0 22px;}
.campaign-actions{position:relative;display:flex;flex-wrap:wrap;gap:12px}.campaign-primary{background:var(--eta-navy);color:var(--eta-gold)!important;border-color:rgba(244,197,66,.45)}.campaign-secondary{background:#fff;color:var(--eta-navy);border-color:rgba(9,42,67,.14)}
.campaign-visual-card{grid-area:visual;position:relative;min-height:520px;border-radius:36px;overflow:hidden;background:var(--eta-navy);}
.campaign-visual-card img{width:100%;height:100%;min-height:520px;object-fit:cover;display:block;filter:saturate(1.05) contrast(1.02)}
.campaign-visual-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,42,67,.02),rgba(9,42,67,.14) 46%,rgba(9,42,67,.72));}
.campaign-image-note{position:absolute;left:18px;right:18px;bottom:18px;z-index:2;background:rgba(255,255,255,.82);backdrop-filter:blur(12px);color:var(--eta-navy);border-radius:22px;padding:14px 16px;font-weight:900;text-align:center}
.campaign-chip-row{grid-area:chips;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.campaign-chip-row span{background:var(--eta-navy);color:#fff;border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:12px 14px;text-align:center;font-weight:900;font-size:.88rem;box-shadow:0 10px 26px rgba(7,30,49,.12)}
.campaign-details,.campaign-benefits,.campaign-final{padding:28px 0}.campaign-two-up{display:grid;grid-template-columns:1.08fr .92fr;gap:20px;align-items:stretch}.campaign-story-card{background:#fff;border-radius:34px;padding:clamp(24px,4vw,42px)}.campaign-story-card h2,.campaign-final-card h2{font-size:clamp(2rem,4vw,3.65rem);line-height:.96;letter-spacing:-.06em;color:var(--eta-navy);margin:16px 0 12px}.campaign-story-card p,.campaign-final-card p{font-size:1.08rem;color:#3c5066;margin:0;max-width:760px}.campaign-route-card{background:linear-gradient(160deg,var(--eta-navy),var(--eta-blue));color:#fff;border-radius:34px;padding:clamp(24px,4vw,42px)}.campaign-route-card .campaign-mini{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.22)}.campaign-route-card ol{list-style:none;counter-reset:route;margin:18px 0 0;padding:0;display:grid;gap:14px}.campaign-route-card li{counter-increment:route;display:flex;gap:12px;align-items:flex-start;font-weight:850;color:rgba(255,255,255,.92)}.campaign-route-card li:before{content:counter(route);flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:var(--eta-gold);color:var(--eta-navy);display:grid;place-items:center;font-weight:950}.campaign-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.campaign-benefit-card{background:rgba(255,255,255,.9);border-radius:30px;padding:24px}.campaign-spark{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;background:rgba(244,197,66,.23);color:var(--eta-gold-2);font-size:1.25rem;margin-bottom:16px}.campaign-benefit-card h3{font-size:1.35rem;line-height:1.08;color:var(--eta-navy);margin:0 0 8px}.campaign-benefit-card p{margin:0;color:#46576b}.campaign-final-card{display:flex;align-items:center;justify-content:space-between;gap:24px;background:rgba(255,255,255,.9);border-radius:36px;padding:clamp(24px,4vw,44px);margin-bottom:34px}.page-slug-special-needs-theme-park-planning .cta-band,.page-slug-adults-only-theme-park-trips .cta-band,.page-slug-budget-theme-park-trips .cta-band,.page-slug-grandparents-theme-park-trips .cta-band{display:none}
@media(max-width:900px){.campaign-shell{grid-template-columns:1fr;grid-template-areas:"visual" "copy" "chips"}.campaign-visual-card,.campaign-visual-card img{min-height:340px}.campaign-chip-row{grid-template-columns:1fr 1fr}.campaign-two-up,.campaign-card-grid{grid-template-columns:1fr}.campaign-final-card{display:grid}.campaign-bg-orbit{height:220px;top:6px}.campaign-copy-card h1{font-size:clamp(2.35rem,13vw,4.2rem)}}
@media(max-width:560px){.campaign-stage{padding-top:14px}.campaign-visual-card{border-radius:26px;min-height:290px}.campaign-visual-card img{min-height:290px}.campaign-copy-card{border-radius:28px;padding:22px}.campaign-chip-row{grid-template-columns:1fr}.campaign-chip-row span{border-radius:18px}.campaign-story-card,.campaign-route-card,.campaign-benefit-card,.campaign-final-card{border-radius:26px}.campaign-actions .btn{width:100%}}

/* v1.2.0 grandparents landing page accent */
.campaign-grandparents .campaign-copy-card:before{background:rgba(244,197,66,.26)}
.campaign-grandparents .campaign-visual-card:after{background:linear-gradient(180deg,rgba(9,42,67,.01),rgba(9,42,67,.10) 44%,rgba(9,42,67,.70));}


/* v1.2.1: true Google Ads squeeze-page treatment for niche campaign pages */
.page-slug-special-needs-theme-park-planning .site-header,
.page-slug-adults-only-theme-park-trips .site-header,
.page-slug-budget-theme-park-trips .site-header,
.page-slug-grandparents-theme-park-trips .site-header,
.page-slug-special-needs-theme-park-planning .site-footer,
.page-slug-adults-only-theme-park-trips .site-footer,
.page-slug-budget-theme-park-trips .site-footer,
.page-slug-grandparents-theme-park-trips .site-footer{display:none!important;}
.page-slug-special-needs-theme-park-planning,
.page-slug-adults-only-theme-park-trips,
.page-slug-budget-theme-park-trips,
.page-slug-grandparents-theme-park-trips{background:#fffaf0;}
.squeeze-main{--sq-navy:#062d49;--sq-navy2:#041e31;--sq-gold:#f4c542;--sq-cream:#fff7df;--sq-ink:#0a2b43;background:linear-gradient(180deg,#fffaf0 0%,#ffffff 48%,#fffaf0 100%);color:var(--sq-ink);overflow:hidden;}
.squeeze-hero{position:relative;min-height:clamp(690px,94vh,880px);display:flex;align-items:center;isolation:isolate;}
.squeeze-photo{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.015);z-index:-3;}
.squeeze-scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,30,49,.92) 0%,rgba(4,30,49,.74) 42%,rgba(4,30,49,.22) 72%,rgba(4,30,49,.10) 100%),radial-gradient(circle at 28% 18%,rgba(244,197,66,.22),transparent 34%);z-index:-2;}
.squeeze-brand-row{position:absolute;top:18px;left:clamp(16px,4vw,54px);z-index:3;background:rgba(255,255,255,.92);border-radius:22px;padding:10px 14px;box-shadow:0 18px 50px rgba(0,0,0,.18);}
.squeeze-brand-row .eta-default-logo{height:58px;width:auto;max-width:min(330px,72vw);display:block;}
.squeeze-hero-inner{width:100%;padding-top:72px;padding-bottom:72px;}
.squeeze-copy{max-width:760px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.22);border-radius:36px;padding:clamp(26px,5vw,56px);box-shadow:0 30px 90px rgba(0,0,0,.24);backdrop-filter:blur(12px);}
.squeeze-eyebrow,.squeeze-mini{display:inline-flex;align-items:center;border-radius:999px;font-size:.76rem;font-weight:950;letter-spacing:.13em;text-transform:uppercase;}
.squeeze-eyebrow{background:rgba(244,197,66,.95);color:#062d49;padding:10px 14px;box-shadow:0 12px 30px rgba(244,197,66,.22);}
.squeeze-copy h1{font-size:clamp(3rem,8vw,6.4rem);line-height:.88;letter-spacing:-.075em;color:#fff;margin:22px 0 20px;text-wrap:balance;}
.squeeze-copy p{font-size:clamp(1.08rem,2.1vw,1.45rem);line-height:1.55;color:rgba(255,255,255,.91);max-width:680px;margin-bottom:26px;}
.squeeze-primary{background:var(--sq-gold)!important;color:var(--sq-navy)!important;border-color:rgba(255,255,255,.20)!important;box-shadow:0 14px 34px rgba(244,197,66,.28);font-weight:950;}
.squeeze-microtrust{margin-top:14px;color:rgba(255,255,255,.76);font-size:.95rem;font-weight:750;}
.squeeze-trust{background:var(--sq-navy2);color:#fff;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12);}
.squeeze-trust-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;padding:0;}
.squeeze-trust-row span{padding:18px 18px;text-align:center;font-weight:900;color:rgba(255,255,255,.88);background:rgba(255,255,255,.035);}
.squeeze-section{padding:clamp(54px,8vw,96px) 0;}
.squeeze-two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.75fr);gap:28px;align-items:stretch;}
.squeeze-mini{background:rgba(244,197,66,.25);color:var(--sq-navy);padding:8px 12px;border:1px solid rgba(244,197,66,.48);}
.squeeze-why h2,.squeeze-section-head h2,.squeeze-final h2{font-size:clamp(2.1rem,5vw,4.2rem);line-height:.96;letter-spacing:-.055em;color:var(--sq-navy);margin:16px 0;max-width:900px;}
.squeeze-why p,.squeeze-final p{font-size:1.12rem;line-height:1.72;color:#39556a;max-width:760px;}
.squeeze-step-card,.squeeze-benefit-grid article,.squeeze-final-card,.squeeze-proof blockquote{background:#fff;border:1px solid rgba(6,45,73,.10);border-radius:30px;box-shadow:0 22px 60px rgba(6,45,73,.11);}
.squeeze-step-card{padding:28px;}
.squeeze-step-card ol{margin:18px 0 0;padding-left:1.25rem;color:#29485c;font-weight:800;line-height:1.6;}
.squeeze-step-card li{margin:0 0 12px;}
.squeeze-benefits{background:linear-gradient(180deg,#fff 0%,#fff7df 100%);}
.squeeze-section-head{text-align:center;margin-bottom:28px;}
.squeeze-section-head .squeeze-mini{justify-content:center;}
.squeeze-section-head h2{margin-left:auto;margin-right:auto;}
.squeeze-benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.squeeze-benefit-grid article{padding:28px;}
.squeeze-icon{width:52px;height:52px;border-radius:18px;background:rgba(244,197,66,.24);display:grid;place-items:center;color:#d49b00;font-weight:950;font-size:1.2rem;margin-bottom:18px;}
.squeeze-benefit-grid h3{font-size:1.35rem;color:var(--sq-navy);margin-bottom:10px;}
.squeeze-benefit-grid p{color:#496173;line-height:1.62;}
.squeeze-proof{background:#fff;}
.squeeze-proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.squeeze-proof blockquote{margin:0;padding:28px;font-size:1.05rem;font-weight:850;color:#153c56;line-height:1.55;}
.squeeze-proof cite{display:block;margin-top:14px;color:#6a7f8d;font-style:normal;font-weight:800;font-size:.9rem;}
.squeeze-final{padding:clamp(58px,8vw,104px) 0;background:radial-gradient(circle at 80% 20%,rgba(244,197,66,.28),transparent 34%),linear-gradient(135deg,#062d49 0%,#041e31 100%);}
.squeeze-final-card{padding:clamp(28px,5vw,56px);text-align:center;max-width:980px;margin:0 auto;background:rgba(255,255,255,.96);}
.squeeze-final-card h2{margin-left:auto;margin-right:auto;}
.squeeze-final-card p{margin-left:auto;margin-right:auto;}
.squeeze-final-card .btn{margin-top:10px;}
.squeeze-note{font-size:.94rem!important;color:#6b7f8e!important;margin-top:16px!important;}
@media (max-width:860px){
  .squeeze-hero{min-height:760px;align-items:flex-end;}
  .squeeze-scrim{background:linear-gradient(180deg,rgba(4,30,49,.22) 0%,rgba(4,30,49,.64) 35%,rgba(4,30,49,.96) 100%);}
  .squeeze-brand-row{top:10px;left:10px;right:10px;border-radius:18px;padding:8px 10px;display:flex;justify-content:center;}
  .squeeze-brand-row .eta-default-logo{height:46px;max-width:82vw;}
  .squeeze-hero-inner{padding:108px 0 26px;}
  .squeeze-copy{border-radius:28px;padding:24px;margin:0 2px;background:rgba(255,255,255,.12);}
  .squeeze-copy h1{font-size:clamp(2.55rem,14vw,4.6rem);}
  .squeeze-copy p{font-size:1.02rem;}
  .squeeze-trust-row{grid-template-columns:1fr 1fr;}
  .squeeze-trust-row span{font-size:.86rem;padding:14px 8px;}
  .squeeze-two-col,.squeeze-benefit-grid,.squeeze-proof-grid{grid-template-columns:1fr;}
  .squeeze-section{padding:46px 0;}
  .squeeze-why h2,.squeeze-section-head h2,.squeeze-final h2{font-size:2.35rem;}
}


/* v1.2.2: About Amanda photo treatment */
.about-amanda-split{align-items:center;margin-bottom:18px;grid-template-columns:1.35fr .65fr;}
.about-photo-card{position:relative;overflow:hidden;border-radius:26px;background:linear-gradient(160deg,var(--eta-navy),var(--eta-blue));box-shadow:var(--eta-shadow);min-height:210px;max-width:330px;justify-self:center;border:1px solid rgba(9,42,67,.12);}
.about-photo-card img{width:100%;height:100%;min-height:210px;object-fit:cover;display:block;filter:saturate(1.04) contrast(1.02);}
.about-photo-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,42,67,0) 45%,rgba(9,42,67,.78) 100%);pointer-events:none;}
.about-photo-caption{position:absolute;left:12px;right:12px;bottom:12px;z-index:2;background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.48);border-radius:18px;padding:10px 12px;box-shadow:0 12px 28px rgba(0,0,0,.16);backdrop-filter:blur(10px);}
.about-photo-caption h3{margin:0 0 2px;color:var(--eta-navy);font-size:1.05rem;line-height:1.1;}
.about-photo-caption p{margin:0;color:#40556a;font-weight:700;line-height:1.3;font-size:.78rem;}
.about-highlight{margin-top:22px;display:inline-flex;flex-direction:column;gap:2px;background:rgba(244,197,66,.20);border:1px solid rgba(244,197,66,.42);border-radius:20px;padding:14px 16px;color:var(--eta-navy);}
.about-highlight strong{font-size:1.05rem;}
.about-highlight span{font-size:.86rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase;color:#8a6810;}
.about-style-cards{margin-top:22px;}
@media(max-width:760px){.about-amanda-split{grid-template-columns:1fr;}.about-photo-card{min-height:220px;max-width:260px;width:100%;}.about-photo-card img{min-height:220px;}.about-photo-caption{left:10px;right:10px;bottom:10px;border-radius:16px;padding:10px;}.about-highlight{width:100%;}}

/* v1.2.4 clickable service quote links */
.service-price-link{display:inline-block;text-decoration:none;color:var(--navy);}
.service-price-link:hover,.service-price-link:focus{color:var(--gold-dark);text-decoration:underline;text-underline-offset:4px;}
.eta-trip-form select[name="eta_trip_type"]{font-weight:800;}
