
:root{
  --bg:#06162c;
  --bg2:#0a203f;
  --ink:#f8f4ea;
  --muted:#b8c6dc;
  --gold:#d9ad49;
  --gold2:#ffd777;
  --gold3:#9d6d21;
  --navy:#071a34;
  --navy2:#0d294e;
  --line:rgba(255,218,126,.28);
  --glass:rgba(11,31,58,.68);
  --glass2:rgba(13,39,72,.78);
  --shadow:0 24px 70px rgba(0,0,0,.38);
}
html[data-theme="standard"], body[data-theme="standard"]{
  --bg:#071832;
  --bg2:#102c51;
  --ink:#fbf7ef;
  --muted:#c3cde0;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-height:100vh;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--ink);
  background:
    radial-gradient(circle at 50% -10%, rgba(54,101,160,.46), transparent 38%),
    radial-gradient(circle at 8% 30%, rgba(217,173,73,.12), transparent 32%),
    radial-gradient(circle at 100% 80%, rgba(217,173,73,.10), transparent 28%),
    linear-gradient(180deg,#030910 0%,var(--bg) 42%,#02050a 100%);
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(100deg,transparent 0 20%,rgba(255,215,119,.08) 22%,transparent 31%),
    linear-gradient(78deg,transparent 0 70%,rgba(255,215,119,.08) 74%,transparent 82%);
  opacity:.75;
}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
button,select{font:inherit}
.sf-icon{width:1.15em;height:1.15em;display:inline-block;vertical-align:-.2em}

.app-shell{
  width:min(980px,100%);
  margin:0 auto;
  padding:20px 18px 118px;
  position:relative;
}
.top-safe{
  height:36px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 10px;
  color:#fff;
  font-weight:800;
}
.status-pill{display:flex;gap:4px;align-items:flex-end}
.status-pill span{display:block;width:4px;border-radius:99px;background:#fff}
.status-pill span:nth-child(1){height:8px}.status-pill span:nth-child(2){height:12px}.status-pill span:nth-child(3){height:16px}

.brand-panel,
.hero-card,
.estimate-card,
.photo-service,
.suggestion-strip,
.trust-strip,
.payments-contact,
.premium-dock,
.modal-shell{
  background:linear-gradient(180deg,rgba(17,45,82,.78),rgba(5,16,31,.72));
  border:1px solid rgba(255,216,126,.24);
  box-shadow:var(--shadow), inset 0 1px 0 rgba(255,255,255,.10);
  backdrop-filter:blur(22px) saturate(1.15);
  -webkit-backdrop-filter:blur(22px) saturate(1.15);
}
.brand-panel{
  border-radius:28px;
  padding:18px;
  position:relative;
  overflow:hidden;
}
.brand-panel::after,.estimate-card::after,.hero-card::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(135deg,rgba(255,255,255,.13),transparent 30%,rgba(255,215,119,.08) 65%,transparent);
  opacity:.6;
}
.brand-main{display:flex;gap:14px;align-items:center;position:relative;z-index:1}
.brand-main img{
  width:64px;
  height:64px;
  border-radius:50%;
  object-fit:contain;
  padding:5px;
  background:radial-gradient(circle,#142b4e,#061a33);
  border:1px solid var(--gold);
  box-shadow:0 12px 28px rgba(217,173,73,.2);
}
.brand-main h1{
  margin:0;
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(2rem,5vw,3.2rem);
  line-height:.95;
  letter-spacing:-.04em;
}
.brand-main p{margin:4px 0 0;color:var(--gold2);font-weight:700;font-size:1.1rem}
.brand-controls{position:absolute;right:18px;top:18px;display:flex;gap:10px;align-items:center;z-index:3}
.language-pills{display:flex;gap:5px;padding:4px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}
.lang-choice,.menu-or-theme{
  height:38px;
  border:0;
  border-radius:999px;
  padding:0 14px;
  background:rgba(255,255,255,.05);
  color:#fff;
  font-weight:800;
}
.lang-choice.active-lang{background:linear-gradient(180deg,var(--gold2),var(--gold));color:#071a34}
.menu-or-theme{border:1px solid rgba(255,255,255,.14)}
.theme-label{display:none}
.brand-chips{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px;position:relative;z-index:1}
.glass-chip{
  display:inline-flex;gap:9px;align-items:center;
  min-height:44px;
  padding:0 18px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,216,126,.24);
  color:#fff;
  font-weight:800;
}

.hero-card{
  margin-top:16px;
  border-radius:30px;
  min-height:430px;
  position:relative;
  overflow:hidden;
}
.hero-bg{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(3,9,18,.82) 0%,rgba(5,15,28,.66) 42%,rgba(5,12,20,.18) 100%),
    url("assets/luquillo-experience.jpeg") center/cover no-repeat;
  filter:saturate(.95) contrast(1.04);
}
.hero-vehicle{
  position:absolute;
  right:-1%;
  bottom:66px;
  width:min(56%,520px);
  border-radius:22px;
  object-fit:cover;
  aspect-ratio:4/3;
  box-shadow:0 18px 45px rgba(0,0,0,.38);
  mask-image:linear-gradient(90deg,transparent 0%,#000 15%,#000 100%);
}
.hero-content{
  position:relative;
  z-index:1;
  max-width:55%;
  padding:32px 30px 86px;
}
.premium-label{
  display:inline-block;
  margin-bottom:12px;
  color:var(--gold2);
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
}
.hero-content h2{
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2.6rem,7vw,5.2rem);
  line-height:.88;
  letter-spacing:-.06em;
}
.hero-content h2 strong{display:block;color:var(--gold2);font-weight:inherit}
.hero-content p{font-size:1.08rem;line-height:1.45;color:#fff;margin:20px 0 18px;max-width:34ch}
.rating-badge{
  display:inline-grid;
  grid-template-columns:auto auto;
  gap:0 10px;
  align-items:center;
  padding:12px 16px;
  border-radius:20px;
  background:rgba(4,13,25,.62);
  border:1px solid rgba(255,216,126,.25);
}
.rating-badge span{grid-row:1/3;color:var(--gold2);font-size:1.7rem}
.rating-badge b{font-size:.95rem}.rating-badge small{color:var(--muted)}
.hero-features{
  position:absolute;
  z-index:2;
  bottom:0;left:0;right:0;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:rgba(4,12,23,.62);
  border-top:1px solid rgba(255,216,126,.18);
}
.hero-features span{display:flex;gap:9px;justify-content:center;align-items:center;padding:14px 8px;color:#fff;font-weight:700}
.hero-features svg{color:var(--gold2)}

.primary-cta-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}
.big-cta{
  min-height:70px;
  border-radius:22px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  padding:0 18px;
  font-weight:900;
  font-size:1.2rem;
  border:1px solid rgba(255,216,126,.28);
}
.big-cta.gold,.estimate-submit,.small-gold-btn{
  color:#06172b;
  background:linear-gradient(180deg,#ffe595 0%,#d7a943 53%,#a97924 100%);
  box-shadow:0 14px 34px rgba(217,173,73,.28), inset 0 1px 0 rgba(255,255,255,.45);
}
.big-cta.navy{background:linear-gradient(180deg,#143358,#071a34);color:#fff}
.wa-icon{
  width:28px;height:28px;border-radius:50%;
  background:#fff;
  position:relative;
  display:inline-block;
}
.wa-icon::before{content:"☎";position:absolute;color:#128c4a;inset:0;display:grid;place-items:center;font-size:.9rem;font-weight:900}

.estimate-card{
  border-radius:30px;
  padding:24px;
  position:relative;
  overflow:hidden;
}
.section-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:16px;position:relative;z-index:1}
.section-head h2,.payments-card h2,.suggestion-strip h2{
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:2rem;
  line-height:1;
  color:#fff;
}
.section-head p,.payments-card p,.suggestion-strip p{margin:5px 0 0;color:var(--muted)}
.mini-map-art{
  width:78px;height:54px;border-radius:18px;
  color:var(--gold2);
  display:grid;place-items:center;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,216,126,.2);
}
.calculator-shell{display:grid;gap:12px;position:relative;z-index:1}
.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.field{display:grid;gap:8px}
.field span{color:#fff;font-weight:800;display:flex;gap:8px;align-items:center}
.field select{
  height:58px;
  width:100%;
  border-radius:18px;
  border:1px solid rgba(255,216,126,.24);
  color:#fff;
  background:rgba(2,9,18,.48);
  padding:0 16px;
  outline:none;
}
.hidden-daytrip{display:none}
.estimate-submit{
  border:0;
  min-height:64px;
  border-radius:18px;
  font-weight:900;
  font-size:1.25rem;
}
.estimate-panel{
  display:grid;gap:4px;
  padding:16px;
  border-radius:20px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,216,126,.16);
}
.estimate-label{color:var(--gold2);font-weight:900;text-transform:uppercase;font-size:.78rem;letter-spacing:.08em}
.estimate-value{font-size:1.55rem}
.estimate-sub,.note-copy{color:var(--muted);line-height:1.5}
.common-chip{display:inline-flex;width:max-content;border-radius:999px;padding:8px 12px;background:rgba(217,173,73,.16);border:1px solid rgba(217,173,73,.2);font-weight:800}
.hidden-common,.hidden-note{display:none}
.context-note{padding:14px;border-radius:18px;background:rgba(217,173,73,.12);border:1px solid rgba(217,173,73,.2);color:#fff}

.service-row{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin:16px 0;
}
.photo-service{
  min-height:230px;
  border-radius:26px;
  padding:18px;
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}
.photo-service::before{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.14),rgba(2,8,16,.86)), var(--service-img) center/cover no-repeat;
  opacity:.85;
}
.photo-service > *{position:relative;z-index:1}
.photo-service.airport{--service-img:url("assets/kia-real-hero.jpg")}
.photo-service.road{--service-img:url("assets/round-trips-real.jpg")}
.photo-service.waterfall{--service-img:url("assets/gozalandia.jpg")}
.round-icon{
  width:58px;height:58px;border-radius:50%;
  display:grid;place-items:center;
  border:2px solid var(--gold);
  color:var(--gold2);
  background:rgba(5,13,23,.55);
  margin-bottom:auto;
}
.photo-service h3{
  margin:16px 0 4px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.55rem;
  line-height:.95;
}
.photo-service p{margin:0;color:#fff;line-height:1.35}
.photo-service a{
  position:absolute;right:16px;bottom:16px;
  width:38px;height:38px;border-radius:50%;
  display:grid;place-items:center;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.18);
  font-size:2rem;
}

.suggestion-strip{
  border-radius:26px;
  padding:18px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:14px;
  align-items:center;
}
.suggestion-icon{
  width:58px;height:58px;border-radius:20px;
  display:grid;place-items:center;
  color:var(--gold2);
  background:rgba(255,255,255,.06);
}
.small-gold-btn{padding:14px 18px;border-radius:18px;font-weight:900}
.trust-strip{
  margin-top:14px;
  border-radius:24px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  overflow:hidden;
}
.trust-strip span{
  display:flex;
  gap:8px;
  align-items:center;
  justify-content:center;
  min-height:64px;
  padding:10px;
  color:#fff;
  border-right:1px solid rgba(255,255,255,.12);
}
.trust-strip svg{color:var(--gold2)}

.payments-contact{
  margin-top:14px;
  border-radius:28px;
  padding:18px;
}
.payments{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.pay-chip{
  min-height:42px;
  padding:0 15px;
  border-radius:15px;
  display:inline-flex;
  align-items:center;
  font-weight:900;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,216,126,.14);
}
.venmo,.paypal{color:#4ba4ff}.applepay{color:#fff}.cash{color:#96ec7f}
.contact-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.mini-action{
  min-height:44px;
  padding:0 14px;
  border-radius:16px;
  display:inline-flex;
  gap:8px;
  align-items:center;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,216,126,.14);
  font-weight:800;
}
.deposit-note{margin:14px 0 0;color:var(--muted);line-height:1.5}

.premium-dock{
  position:fixed;
  left:50%;
  bottom:calc(env(safe-area-inset-bottom,0px) + 10px);
  transform:translateX(-50%);
  width:min(920px,calc(100vw - 20px));
  min-height:82px;
  border-radius:28px;
  z-index:50;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:4px;
  padding:8px;
}
.premium-dock a{
  border-radius:22px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  color:var(--muted);
  font-size:.78rem;
  font-weight:800;
}
.premium-dock svg{font-size:1.3rem}
.premium-dock a.active{color:var(--gold2);background:rgba(217,173,73,.12)}
.premium-dock a.save{
  color:#06172b;
  background:linear-gradient(180deg,#ffe595,#d3a23f);
  box-shadow:0 14px 28px rgba(217,173,73,.28);
}

/* Modals and shared buttons */
.quote-modal,.yunque-modal{width:min(720px,calc(100vw - 24px));border:0;padding:0;background:transparent}
.quote-modal::backdrop,.yunque-modal::backdrop{background:rgba(0,0,0,.55);backdrop-filter:blur(8px)}
.modal-shell{border-radius:28px;overflow:hidden;color:#fff}
.modal-head{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid rgba(255,216,126,.16)}
.modal-head h3{margin:0;font-size:1.35rem}
.modal-close{width:40px;height:40px;border-radius:14px;border:0;background:rgba(255,255,255,.08);color:#fff;font-size:1.4rem}
.modal-body{padding:22px}
.modal-summary{padding:16px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,216,126,.12);margin-top:12px}
.modal-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.btn{min-height:52px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 16px;font-weight:900;border:1px solid rgba(255,216,126,.18);background:rgba(255,255,255,.07)}
.btn.primary{background:linear-gradient(180deg,#ffe595,#d3a23f);color:#06172b}
.btn.whatsapp{background:linear-gradient(180deg,#28d967,#10a24b);color:white}
.yunque-points{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:14px 0}
.yunque-point,.yunque-pill{padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,216,126,.14)}
.yunque-confirm{width:100%;border:0}

/* Experiences / NFC fallback */
.page-header,.exp-grid,.nfc-shell{width:min(980px,100%);margin:0 auto}
.page-header{padding:24px 18px;color:#fff}
.back-link{display:inline-flex;min-height:44px;padding:0 16px;border-radius:16px;align-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,216,126,.16);font-weight:800}
.exp-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:0 18px 110px}
.exp-card{border-radius:26px;overflow:hidden;background:var(--glass);border:1px solid rgba(255,216,126,.18)}
.exp-card .media img{width:100%;height:220px;object-fit:cover}
.exp-card .copy{padding:18px}.exp-card .copy h2{margin:0;color:#fff}.exp-card .copy p{color:var(--muted)}
.exp-card.map-card{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.exp-card.map-card .media img{height:100%;object-fit:contain;background:#06172b}
.nfc-shell{padding-bottom:110px}

/* responsive */
@media (max-width:760px){
  .app-shell{padding:10px 10px 112px}
  .top-safe{height:28px}
  .brand-panel{border-radius:24px;padding:14px}
  .brand-main img{width:48px;height:48px}
  .brand-main h1{font-size:1.78rem}
  .brand-main p{font-size:.95rem}
  .brand-controls{right:12px;top:12px}
  .lang-choice,.menu-or-theme{height:34px;padding:0 11px;font-size:.86rem}
  .brand-chips{gap:8px;margin-top:14px}
  .glass-chip{min-height:38px;padding:0 12px;font-size:.9rem}
  .hero-card{min-height:520px;border-radius:24px}
  .hero-bg{background:linear-gradient(180deg,rgba(3,9,18,.45),rgba(3,9,18,.90)),url("assets/luquillo-experience.jpeg") center/cover no-repeat}
  .hero-content{max-width:100%;padding:26px 20px 0}
  .hero-content h2{font-size:3.05rem;max-width:8ch}
  .hero-content p{max-width:24ch;font-size:.98rem}
  .hero-vehicle{width:80%;right:-8px;bottom:82px;border-radius:20px}
  .rating-badge{padding:10px 12px}
  .hero-features{grid-template-columns:1fr 1fr 1fr}
  .hero-features span{font-size:.75rem;gap:5px;flex-direction:column;text-align:center}
  .primary-cta-row{grid-template-columns:1fr 1fr}
  .big-cta{min-height:58px;font-size:.97rem;border-radius:18px}
  .estimate-card{padding:16px;border-radius:24px}
  .section-head h2{font-size:1.55rem}
  .form-grid{grid-template-columns:1fr 1fr;gap:8px}
  .field select{height:52px;border-radius:15px;font-size:.9rem;padding:0 10px}
  .estimate-submit{min-height:56px;font-size:1.05rem}
  .service-row{grid-template-columns:1fr 1fr 1fr;gap:8px}
  .photo-service{min-height:190px;border-radius:20px;padding:12px}
  .round-icon{width:46px;height:46px}
  .photo-service h3{font-size:1.24rem}
  .photo-service p{font-size:.82rem}
  .photo-service a{width:32px;height:32px;font-size:1.6rem}
  .suggestion-strip{grid-template-columns:auto 1fr;border-radius:22px}
  .suggestion-strip .small-gold-btn{grid-column:1/-1;text-align:center}
  .trust-strip{grid-template-columns:repeat(4,1fr)}
  .trust-strip span{font-size:.72rem;flex-direction:column;text-align:center;min-height:72px}
  .payments-contact{border-radius:22px;padding:14px}
  .premium-dock{min-height:76px;border-radius:24px}
  .premium-dock a{font-size:.68rem}
  .premium-dock a.save{font-size:.64rem}
  .exp-grid,.exp-card.map-card{grid-template-columns:1fr}
}
@media (max-width:430px){
  .brand-main h1{font-size:1.55rem}
  .brand-main p{font-size:.86rem}
  .brand-controls{gap:6px}
  .menu-or-theme{width:36px;padding:0}.menu-or-theme .theme-icon{font-size:0}.menu-or-theme::before{content:"☾";font-size:1rem}
  .hero-content h2{font-size:2.66rem}
  .hero-card{min-height:505px}
  .hero-vehicle{width:86%;bottom:82px}
  .big-cta{font-size:.88rem;padding:0 10px}
  .service-row{grid-template-columns:1fr}
  .photo-service{min-height:160px}
  .form-grid{grid-template-columns:1fr}
  .trust-strip{grid-template-columns:repeat(2,1fr)}
  .premium-dock{width:calc(100vw - 12px);bottom:calc(env(safe-area-inset-bottom,0px) + 6px);padding:6px}
}

/* Single-version lock: premium navy + gold only */
html, body{color-scheme:dark;}
.menu-or-theme.static-menu{
  display:grid;
  place-items:center;
  width:42px;
  padding:0;
  font-size:1.28rem;
}
.theme-toggle,
.top-toggle-cluster{
  display:none !important;
}
body[data-theme],
html[data-theme]{
  color-scheme:dark;
}

/* Mobile fixes after real-device review */
.menu-or-theme.static-menu::before{content:none !important;}
.menu-or-theme.static-menu{
  font-size:1.18rem !important;
  color:#fff !important;
}

@media (max-width:760px){
  .brand-panel{
    padding:12px !important;
  }
  .brand-main{
    padding-right:96px;
  }
  .brand-main img{
    width:42px !important;
    height:42px !important;
  }
  .brand-main h1{
    font-size:1.34rem !important;
    line-height:1 !important;
    white-space:nowrap;
  }
  .brand-main p{
    font-size:.78rem !important;
  }
  .brand-controls{
    top:12px !important;
    right:12px !important;
  }
  .language-pills{
    padding:3px;
    gap:3px;
  }
  .lang-choice{
    height:30px !important;
    padding:0 9px !important;
    font-size:.75rem !important;
  }
  .menu-or-theme.static-menu{
    width:32px !important;
    height:32px !important;
    min-width:32px !important;
    padding:0 !important;
    display:grid !important;
    place-items:center !important;
  }
  .brand-chips{
    display:grid !important;
    grid-template-columns:1fr;
    gap:8px !important;
    margin-top:12px !important;
  }
  .glass-chip{
    width:max-content;
    min-height:34px !important;
    padding:0 12px !important;
    font-size:.83rem !important;
  }

  .hero-card{
    min-height:0 !important;
    display:flex;
    flex-direction:column;
    overflow:hidden;
  }
  .hero-card::after{
    display:none;
  }
  .hero-bg{
    position:relative !important;
    inset:auto !important;
    height:210px !important;
    width:100%;
    background:
      linear-gradient(180deg,rgba(2,8,16,.08),rgba(2,8,16,.58)),
      url("assets/kia-real-hero.jpg") center/cover no-repeat !important;
    border-bottom:1px solid rgba(255,216,126,.22);
  }
  .hero-vehicle{
    display:none !important;
  }
  .hero-content{
    max-width:100% !important;
    padding:18px 18px 14px !important;
    position:relative !important;
    z-index:2;
    background:linear-gradient(180deg,rgba(7,26,52,.96),rgba(4,13,25,.92));
  }
  .premium-label{
    font-size:.76rem !important;
    margin-bottom:8px !important;
  }
  .hero-content h2{
    font-size:2.15rem !important;
    line-height:.95 !important;
    max-width:100% !important;
    letter-spacing:-.045em !important;
  }
  .hero-content p{
    max-width:none !important;
    font-size:.9rem !important;
    line-height:1.42 !important;
    margin:12px 0 !important;
  }
  .rating-badge{
    padding:9px 11px !important;
    border-radius:16px !important;
  }
  .rating-badge b,
  .rating-badge small{
    font-size:.78rem !important;
  }
  .hero-features{
    position:relative !important;
    grid-template-columns:repeat(3,1fr) !important;
  }
  .hero-features span{
    min-height:54px;
    padding:9px 4px !important;
    font-size:.68rem !important;
  }
}

@media (max-width:430px){
  .brand-main{
    padding-right:92px;
  }
  .brand-main h1{
    font-size:1.18rem !important;
  }
  .hero-bg{
    height:185px !important;
  }
  .hero-content h2{
    font-size:1.92rem !important;
  }
}


/* Removed fake top status bar and added highlighted phone chip */
.top-safe{display:none !important;}

.gold-chip{
  background:linear-gradient(180deg,#ffe595 0%,#d7a943 53%,#a97924 100%) !important;
  color:#071a34 !important;
  border:1px solid rgba(255,229,149,.65) !important;
  box-shadow:0 10px 24px rgba(217,173,73,.24), inset 0 1px 0 rgba(255,255,255,.45);
  font-weight:900 !important;
}
.gold-chip .sf-icon{
  color:#071a34 !important;
}

@media (max-width:760px){
  .brand-chips{
    grid-template-columns:1fr !important;
  }
  .gold-chip{
    width:max-content;
    max-width:100%;
    font-size:.84rem !important;
  }
}


/* Hero refinement: vehicle image on top, all text below */
.hero-card{
  min-height:0 !important;
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
}
.hero-card::after{
  display:none !important;
}
.hero-bg{
  position:relative !important;
  inset:auto !important;
  width:100% !important;
  height:320px !important;
  background:
    linear-gradient(180deg, rgba(4,12,22,.08), rgba(4,12,22,.28)),
    url("assets/kia-real-hero.jpg") center/cover no-repeat !important;
  border-bottom:1px solid rgba(255,216,126,.20);
}
.hero-vehicle{
  display:none !important;
}
.hero-content{
  max-width:100% !important;
  position:relative !important;
  z-index:2 !important;
  padding:24px 24px 18px !important;
  background:linear-gradient(180deg, rgba(7,26,52,.94), rgba(4,13,25,.92)) !important;
}
.hero-content h2{
  max-width:100% !important;
}
.hero-content p{
  max-width:42ch !important;
}
.rating-badge{
  margin-top:8px !important;
}
.hero-features{
  position:relative !important;
  bottom:auto !important;
  left:auto !important;
  right:auto !important;
  border-top:1px solid rgba(255,216,126,.18) !important;
}

@media (max-width:760px){
  .hero-bg{
    height:230px !important;
  }
  .hero-content{
    padding:18px 18px 14px !important;
  }
  .hero-content h2{
    font-size:2rem !important;
    line-height:.96 !important;
  }
  .hero-content p{
    max-width:none !important;
    font-size:.92rem !important;
  }
  .rating-badge{
    width:100%;
    grid-template-columns:auto 1fr;
    gap:0 8px;
  }
}

@media (max-width:430px){
  .hero-bg{
    height:205px !important;
  }
  .hero-content h2{
    font-size:1.82rem !important;
  }
}


/* WhatsApp icon refinement for bars/buttons */
.wa-icon{
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  border-radius:50% !important;
  background:#ffffff !important;
  position:relative !important;
  display:inline-block !important;
  vertical-align:middle !important;
  box-shadow:0 1px 0 rgba(255,255,255,.35), 0 4px 10px rgba(0,0,0,.14);
}
.wa-icon::before{
  content:"";
  position:absolute;
  inset:3px;
  border-radius:50%;
  background:#25D366;
}
.wa-icon::after{
  content:"☎";
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:#fff;
  font-size:.72rem;
  font-weight:900;
  transform:translateY(-.3px);
}
.big-cta .wa-icon,
.btn.whatsapp .wa-icon,
.mini-action .wa-icon,
.glass-chip .wa-icon{
  margin-right:2px;
}


/* Final holistic cleanup */
.app-shell{
  padding-top:14px !important;
  padding-bottom:130px !important;
}
.brand-panel,
.hero-card,
.estimate-card,
.suggestion-strip,
.payments-contact{
  margin-top:14px;
}
.primary-cta-row,
.service-row{
  margin-top:14px;
  margin-bottom:14px;
}
.brand-controls{
  gap:8px;
}
.language-pills{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10);
}
.brand-chips{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.brand-chips .gold-chip{
  order:3;
}
.glass-chip,
.big-cta,
.small-gold-btn,
.estimate-submit,
.mini-action,
.pay-chip,
.premium-dock a,
.photo-service,
.lang-choice{
  transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease, border-color .18s ease;
}
.big-cta:hover,.small-gold-btn:hover,.estimate-submit:hover,.mini-action:hover,.glass-chip:hover{
  transform:translateY(-1px);
}
.hero-content p{
  color:#eef3fb;
}
.rating-badge{
  background:rgba(4,13,25,.72);
}
.service-row{
  align-items:stretch;
}
.photo-service{
  min-height:220px;
}
.photo-service h3{
  text-wrap:balance;
}
.suggestion-strip{
  align-items:center;
}
.payments-contact{
  display:grid;
  gap:14px;
}
.payments-card p,
.deposit-note{
  max-width:68ch;
}
.contact-actions{
  gap:10px;
  margin-top:6px;
}
.deposit-note{
  margin-top:0;
}
.premium-dock{
  box-shadow:0 24px 70px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.10);
}
.premium-dock a{
  min-height:62px;
}
.premium-dock a.save{
  padding-inline:8px;
}
.menu-or-theme.static-menu,
.menu-or-theme{
  display:none !important;
}

/* More polished hero: image above, text below, no overlap */
.hero-card{
  min-height:0 !important;
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
}
.hero-card::after{
  display:none !important;
}
.hero-bg{
  position:relative !important;
  inset:auto !important;
  width:100% !important;
  height:315px !important;
  background:
    linear-gradient(180deg, rgba(4,12,22,.06), rgba(4,12,22,.22)),
    url("assets/kia-real-hero.jpg") center/cover no-repeat !important;
  border-bottom:1px solid rgba(255,216,126,.18);
}
.hero-vehicle{display:none !important;}
.hero-content{
  max-width:100% !important;
  position:relative !important;
  z-index:1 !important;
  padding:22px 24px 16px !important;
  background:linear-gradient(180deg, rgba(7,26,52,.96), rgba(4,13,25,.94)) !important;
}
.hero-content h2{
  max-width:11ch !important;
  margin-bottom:10px;
}
.hero-content p{
  max-width:40ch !important;
  margin:0 0 14px !important;
}
.hero-features{
  position:relative !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
  border-top:1px solid rgba(255,216,126,.16);
}

/* WhatsApp icon consistency */
.wa-icon{
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  border-radius:50% !important;
  background:#fff !important;
  position:relative !important;
  display:inline-block !important;
  vertical-align:middle !important;
  box-shadow:0 1px 0 rgba(255,255,255,.35), 0 4px 10px rgba(0,0,0,.14);
}
.wa-icon::before{
  content:"";
  position:absolute;
  inset:3px;
  border-radius:50%;
  background:#25D366;
}
.wa-icon::after{
  content:"☎";
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:#fff;
  font-size:.72rem;
  font-weight:900;
  transform:translateY(-.3px);
}

@media (max-width:760px){
  .app-shell{
    padding:10px 10px 122px !important;
  }
  .brand-panel{
    padding:14px !important;
  }
  .brand-main{
    padding-right:0 !important;
    gap:12px !important;
  }
  .brand-main img{
    width:44px !important;
    height:44px !important;
  }
  .brand-main h1{
    font-size:1.28rem !important;
    line-height:1.02 !important;
    white-space:normal !important;
  }
  .brand-main p{
    font-size:.8rem !important;
  }
  .brand-controls{
    position:static !important;
    margin-top:12px;
    justify-content:flex-end;
  }
  .brand-chips{
    display:grid !important;
    grid-template-columns:repeat(2, max-content);
    gap:8px !important;
    align-items:start;
    margin-top:12px !important;
  }
  .brand-chips .gold-chip{
    grid-column:1 / -1;
  }
  .glass-chip{
    min-height:36px !important;
    padding:0 12px !important;
    font-size:.84rem !important;
  }
  .hero-bg{
    height:220px !important;
  }
  .hero-content{
    padding:18px 18px 14px !important;
  }
  .hero-content h2{
    font-size:2rem !important;
    max-width:100% !important;
    line-height:.94 !important;
  }
  .hero-content p{
    max-width:none !important;
    font-size:.92rem !important;
    line-height:1.42 !important;
  }
  .rating-badge{
    width:100%;
    padding:10px 12px !important;
  }
  .hero-features span{
    min-height:58px;
    font-size:.73rem !important;
    line-height:1.15;
  }
  .big-cta{
    min-height:60px;
  }
  .photo-service{
    min-height:180px;
  }
  .payments-contact{
    gap:12px;
  }
  .premium-dock{
    width:calc(100vw - 14px);
    padding:7px;
  }
  .premium-dock a{
    min-height:58px;
    font-size:.68rem;
  }
}

@media (max-width:430px){
  .brand-main h1{
    font-size:1.14rem !important;
  }
  .brand-chips{
    grid-template-columns:1fr !important;
  }
  .glass-chip{
    width:max-content;
    max-width:100%;
  }
  .hero-bg{
    height:200px !important;
  }
  .hero-content h2{
    font-size:1.84rem !important;
  }
  .hero-features{
    grid-template-columns:1fr !important;
  }
  .hero-features span{
    min-height:50px;
    justify-content:flex-start;
    flex-direction:row;
    padding-inline:16px !important;
    text-align:left;
  }
  .primary-cta-row{
    grid-template-columns:1fr;
  }
}


/* Premium polish for Experiences and NFC pages */
.ipad-shell{
  width:min(980px,100%) !important;
  margin:0 auto !important;
  padding:14px 18px 124px !important;
  background:transparent !important;
}
.ipad-screen{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
}
.app-stage{
  padding:0 !important;
  max-width:none !important;
}
.app-toolbar{
  display:grid !important;
  grid-template-columns:1fr auto !important;
  gap:14px !important;
  align-items:center !important;
  padding:16px !important;
  border-radius:28px !important;
  background:linear-gradient(180deg,rgba(17,45,82,.78),rgba(5,16,31,.72)) !important;
  border:1px solid rgba(255,216,126,.24) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.10) !important;
  backdrop-filter:blur(22px) saturate(1.15) !important;
  -webkit-backdrop-filter:blur(22px) saturate(1.15) !important;
  margin-bottom:14px !important;
}
.brand-inline{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
}
.brand-inline img{
  width:52px !important;
  height:52px !important;
  object-fit:contain !important;
  border-radius:50% !important;
  padding:5px !important;
  background:radial-gradient(circle,#142b4e,#061a33) !important;
  border:1px solid var(--gold) !important;
}
.brand-inline h2{
  margin:0 !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:1.8rem !important;
  letter-spacing:-.045em !important;
  color:#fff !important;
  line-height:.98 !important;
}
.brand-inline p{
  margin:3px 0 0 !important;
  color:var(--gold2) !important;
  font-weight:800 !important;
}
.toolbar-meta{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  justify-content:flex-end !important;
  align-items:center !important;
}
.chip{
  min-height:40px !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  padding:0 14px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,216,126,.18) !important;
  color:#fff !important;
  font-weight:900 !important;
}
.chip-strong{
  background:linear-gradient(180deg,#ffe595,#d3a23f) !important;
  color:#06172b !important;
}
.chip-ok{
  background:linear-gradient(180deg,#173b65,#081d39) !important;
}
.premium-page-lang{
  height:40px !important;
}
.page-header{
  width:100% !important;
  padding:0 !important;
  margin:0 0 14px !important;
}
.title-block{
  padding:22px !important;
  border-radius:28px !important;
  background:linear-gradient(180deg,rgba(17,45,82,.78),rgba(5,16,31,.72)) !important;
  border:1px solid rgba(255,216,126,.20) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.10) !important;
}
.title-block h1{
  margin:0 !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:clamp(2.1rem,6vw,4rem) !important;
  line-height:.95 !important;
  color:#fff !important;
  letter-spacing:-.055em !important;
}
.title-block p{
  color:var(--muted) !important;
  max-width:62ch !important;
  margin:8px 0 0 !important;
}
.exp-grid{
  width:100% !important;
  padding:0 0 118px !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
}
.exp-card{
  border-radius:28px !important;
  overflow:hidden !important;
  background:linear-gradient(180deg,rgba(17,45,82,.74),rgba(5,16,31,.76)) !important;
  border:1px solid rgba(255,216,126,.20) !important;
  box-shadow:0 18px 50px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.10) !important;
}
.exp-card .media{
  background:#06172b !important;
}
.exp-card .media img{
  width:100% !important;
  height:250px !important;
  object-fit:cover !important;
}
.exp-card.map-card{
  grid-column:1/-1 !important;
  display:grid !important;
  grid-template-columns:1.05fr .95fr !important;
}
.exp-card.map-card .media img{
  height:100% !important;
  min-height:320px !important;
  object-fit:contain !important;
  padding:10px !important;
  background:#06172b !important;
}
.exp-card .copy{
  padding:20px !important;
}
.exp-card .copy h2{
  margin:0 0 8px !important;
  font-family:Georgia,"Times New Roman",serif !important;
  color:#fff !important;
  font-size:1.65rem !important;
  letter-spacing:-.04em !important;
}
.exp-card .copy p{
  color:var(--muted) !important;
  line-height:1.5 !important;
}
.exp-card .copy .btn,
.exp-card .copy .btn.secondary{
  background:linear-gradient(180deg,#ffe595,#d3a23f) !important;
  color:#06172b !important;
  border:0 !important;
  border-radius:16px !important;
}

/* NFC premium polish */
.nfc-shell{
  padding-bottom:124px !important;
}
.nfc-card{
  border-radius:30px !important;
  background:linear-gradient(180deg,rgba(17,45,82,.78),rgba(5,16,31,.72)) !important;
  border:1px solid rgba(255,216,126,.24) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.10) !important;
}
.nfc-logo{
  width:92px !important;
  height:92px !important;
  border-radius:26px !important;
  object-fit:contain !important;
  padding:8px !important;
  background:radial-gradient(circle,#142b4e,#061a33) !important;
  border:1px solid rgba(255,216,126,.28) !important;
}
.nfc-title{
  font-family:Georgia,"Times New Roman",serif !important;
  letter-spacing:-.045em !important;
  color:#fff !important;
}
.nfc-script{
  color:var(--gold2) !important;
}
.nfc-mini,.nfc-alert{
  background:rgba(255,255,255,.07) !important;
  border:1px solid rgba(255,216,126,.16) !important;
  border-radius:20px !important;
}
.nfc-actions .btn.primary{
  background:linear-gradient(180deg,#ffe595,#d3a23f) !important;
  color:#06172b !important;
}
.nfc-actions .btn.whatsapp{
  background:linear-gradient(180deg,#28d967,#10a24b) !important;
  color:#fff !important;
}
.bottom-dock{
  display:none !important;
}

/* Use new premium dock on secondary pages */
.secondary-premium-dock{
  position:fixed;
  left:50%;
  bottom:calc(env(safe-area-inset-bottom,0px) + 10px);
  transform:translateX(-50%);
  width:min(920px,calc(100vw - 20px));
  min-height:82px;
  border-radius:28px;
  z-index:50;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:4px;
  padding:8px;
  background:linear-gradient(180deg,rgba(17,45,82,.78),rgba(5,16,31,.72));
  border:1px solid rgba(255,216,126,.24);
  box-shadow:0 24px 70px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.10);
  backdrop-filter:blur(22px) saturate(1.15);
  -webkit-backdrop-filter:blur(22px) saturate(1.15);
}
.secondary-premium-dock a{
  min-height:62px;
  border-radius:22px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  color:var(--muted);
  font-size:.78rem;
  font-weight:800;
}
.secondary-premium-dock a.active{
  color:var(--gold2);
  background:rgba(217,173,73,.12);
}
.secondary-premium-dock a.save{
  color:#06172b;
  background:linear-gradient(180deg,#ffe595,#d3a23f);
  box-shadow:0 14px 28px rgba(217,173,73,.28);
}

@media (max-width:760px){
  .ipad-shell{padding:10px 10px 118px !important}
  .app-toolbar{
    grid-template-columns:1fr !important;
    padding:14px !important;
    border-radius:24px !important;
  }
  .brand-inline img{width:44px !important;height:44px !important}
  .brand-inline h2{font-size:1.28rem !important}
  .brand-inline p{font-size:.8rem !important}
  .toolbar-meta{justify-content:flex-start !important}
  .chip{min-height:36px !important;font-size:.83rem !important;padding:0 12px !important}
  .title-block{padding:18px !important;border-radius:24px !important}
  .title-block h1{font-size:2.25rem !important}
  .exp-grid{grid-template-columns:1fr !important;gap:12px !important}
  .exp-card.map-card{grid-template-columns:1fr !important}
  .exp-card .media img{height:220px !important}
  .exp-card.map-card .media img{height:auto !important;min-height:0 !important}
  .secondary-premium-dock{
    width:calc(100vw - 14px);
    min-height:76px;
    border-radius:24px;
    padding:7px;
  }
  .secondary-premium-dock a{
    min-height:58px;
    font-size:.68rem;
  }
}


/* Payment / contact refinement with actions below notice and app-style icons */
.payments-contact{
  display:grid !important;
  gap:14px !important;
}
.payments-card{
  display:grid;
  gap:0;
}
.deposit-note{
  padding:16px 18px !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,216,126,.14) !important;
  color:var(--muted) !important;
  line-height:1.55 !important;
  margin:0 !important;
}
.deposit-note strong{
  display:inline-block;
  margin-bottom:6px;
  color:#fff;
}
.contact-actions{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px !important;
  margin-top:0 !important;
}
.mini-action{
  min-height:58px !important;
  justify-content:flex-start !important;
  padding:10px 14px !important;
  gap:12px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.07) !important;
  border:1px solid rgba(255,216,126,.14) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.mini-action span:last-child{
  font-weight:900;
  color:#fff;
}
.ios-app-icon{
  position:relative;
  width:28px;
  height:28px;
  min-width:28px;
  border-radius:9px;
  display:grid;
  place-items:center;
  overflow:hidden;
  box-shadow:0 6px 14px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.35);
}
.ios-glyph{
  position:relative;
  z-index:2;
  font-weight:900;
  line-height:1;
}
.phone-app{
  background:linear-gradient(180deg,#6fd5ff,#3f67ff);
}
.phone-app .ios-glyph{
  color:#fff;
  font-size:1rem;
}
.facebook-app{
  background:linear-gradient(180deg,#5c8fff,#2362ff);
}
.facebook-app .ios-glyph{
  color:#fff;
  font-size:1.08rem;
  font-family:Arial,sans-serif;
  transform:translateY(.5px);
}
.email-app{
  background:linear-gradient(180deg,#f7fbff,#dfe9ff);
}
.email-app .ios-glyph{
  color:#4b5d7f;
  font-size:.95rem;
}
.contacts-app{
  background:linear-gradient(180deg,#fffef7,#ece8de);
}
.contacts-avatar{
  position:absolute;
  left:5px;
  top:5px;
  width:14px;
  height:14px;
  border-radius:50%;
  border:2px solid #a6a199;
}
.contacts-avatar::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-8px;
  transform:translateX(-50%);
  width:18px;
  height:10px;
  border-radius:12px 12px 8px 8px;
  border:2px solid #a6a199;
  border-top:none;
}
.contacts-band{
  position:absolute;
  top:0;
  right:0;
  width:6px;
  height:100%;
}
.contacts-band.blue{background:#6fc7ff}
.contacts-band.orange{right:6px;background:#f7a43b}
.contacts-band.green{right:12px;background:#7fd97f}
.contact-actions .mini-action:hover{
  transform:translateY(-1px);
}

@media (max-width:760px){
  .contact-actions{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .mini-action{
    min-height:54px !important;
    padding:9px 12px !important;
  }
}
@media (max-width:430px){
  .contact-actions{
    grid-template-columns:1fr !important;
  }
}


/* Payment method chips with app-style icons */
.payments{
  display:flex !important;
  gap:10px !important;
  flex-wrap:wrap !important;
  margin-top:12px !important;
}
.pay-chip{
  min-height:46px !important;
  padding:8px 14px !important;
  border-radius:16px !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:10px !important;
  font-weight:900 !important;
  background:rgba(255,255,255,.07) !important;
  border:1px solid rgba(255,216,126,.14) !important;
  color:#fff !important;
}
.pay-app-icon{
  width:24px;
  height:24px;
  min-width:24px;
  border-radius:8px;
  display:grid;
  place-items:center;
  font-size:.9rem;
  font-weight:900;
  line-height:1;
  box-shadow:0 5px 12px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.25);
}
.venmo-icon{
  background:linear-gradient(180deg,#6db8ff,#2a7fff);
  color:#fff;
}
.applepay-icon{
  background:linear-gradient(180deg,#161b25,#000000);
  color:#fff;
  font-size:1rem;
}
.paypal-icon{
  background:linear-gradient(180deg,#4ca9ff,#0f5bff);
  color:#fff;
}
.cash-icon{
  background:linear-gradient(180deg,#9beb86,#35b24a);
  color:#fff;
}
.cards-icon{
  background:linear-gradient(180deg,#f9fcff,#dbe6f6);
  color:#42536d;
  font-size:1rem;
}
.cards .pay-app-icon{
  font-size:1.15rem;
  transform:translateY(-1px);
}
@media (max-width:430px){
  .payments{
    gap:8px !important;
  }
  .pay-chip{
    min-height:44px !important;
    padding:8px 12px !important;
    gap:8px !important;
  }
}


/* Top area refinement */
.brand-panel{
  background:
    radial-gradient(circle at top right, rgba(255,223,137,.18), transparent 28%),
    linear-gradient(180deg, rgba(21,52,96,.88), rgba(6,22,43,.88)) !important;
  border:1px solid rgba(255,216,126,.22) !important;
  box-shadow:0 26px 70px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.10) !important;
  padding:18px 18px 16px !important;
}
.brand-panel::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(135deg, rgba(255,255,255,.10), transparent 35%, rgba(255,215,119,.08) 68%, transparent);
  opacity:.7;
}
.brand-main{
  gap:14px !important;
  align-items:flex-start !important;
}
.brand-main img{
  width:66px !important;
  height:66px !important;
  padding:6px !important;
  border:1px solid rgba(255,216,126,.44) !important;
  box-shadow:0 14px 30px rgba(217,173,73,.18) !important;
}
.brand-copy{display:flex;flex-direction:column;gap:2px;min-width:0;}
.brand-kicker{
  display:inline-flex;
  align-self:flex-start;
  min-height:24px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(255,216,126,.12);
  border:1px solid rgba(255,216,126,.20);
  color:var(--gold2);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  align-items:center;
  margin-bottom:2px;
}
.brand-main h1{
  font-size:clamp(1.8rem,5vw,3rem) !important;
  line-height:.94 !important;
  color:#fff;
}
.brand-main p{
  margin-top:2px !important;
  color:#f7d77c !important;
  font-weight:800 !important;
  font-size:1rem !important;
}
.brand-controls{
  top:16px !important;
  right:16px !important;
}
.language-pills{
  background:rgba(255,255,255,.09) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.brand-chips{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0,max-content)) !important;
  gap:10px !important;
  margin-top:14px !important;
  align-items:start;
}
.brand-chips .phone-highlight{
  grid-column:1 / -1;
}
.glass-chip{
  min-height:42px !important;
  padding:0 14px !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,216,126,.20) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
  font-size:.9rem !important;
}
.glass-chip .sf-icon{
  width:16px;
  height:16px;
}
.phone-highlight{
  justify-content:center;
  min-height:44px !important;
}
.reservation-chip .sf-icon,
.quote-chip .sf-icon{
  color:var(--gold2);
}
@media (max-width:760px){
  .brand-panel{
    padding:14px 14px 14px !important;
    border-radius:24px !important;
  }
  .brand-main{
    gap:12px !important;
    padding-right:0 !important;
  }
  .brand-main img{
    width:54px !important;
    height:54px !important;
  }
  .brand-kicker{
    font-size:.64rem;
    min-height:22px;
    padding:0 8px;
  }
  .brand-main h1{
    font-size:1.48rem !important;
  }
  .brand-main p{
    font-size:.88rem !important;
  }
  .brand-controls{
    position:static !important;
    margin-top:12px !important;
    justify-content:flex-end !important;
  }
  .brand-chips{
    grid-template-columns:1fr !important;
    gap:8px !important;
  }
  .glass-chip{
    width:max-content;
    max-width:100%;
    min-height:38px !important;
    font-size:.83rem !important;
  }
  .phone-highlight{
    width:max-content;
  }
}


/* ===== Global icon system cleanup ===== */
.social-btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.social-btn > span:last-child{
  display:inline-flex;
  align-items:center;
  gap:10px;
}

.wa-icon{
  position:relative !important;
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  display:inline-block !important;
  border-radius:7px !important;
  background:linear-gradient(180deg,#43e373,#18b655) !important;
  box-shadow:0 6px 14px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.30) !important;
  vertical-align:middle !important;
}
.wa-icon::before{
  content:"" !important;
  position:absolute !important;
  left:4px !important;
  top:4px !important;
  width:16px !important;
  height:16px !important;
  border-radius:50% !important;
  background:#fff !important;
}
.wa-icon::after{
  content:"☎" !important;
  position:absolute !important;
  inset:0 !important;
  display:grid !important;
  place-items:center !important;
  color:#18b655 !important;
  font-size:.75rem !important;
  font-weight:900 !important;
  transform:translateY(-.2px) !important;
}
.btn.whatsapp .wa-icon,
.big-cta .wa-icon,
.chip .wa-icon{
  margin-right:0 !important;
}

/* Shared app-style icons */
.ios-app-icon{
  position:relative;
  width:28px;
  height:28px;
  min-width:28px;
  border-radius:9px;
  display:grid;
  place-items:center;
  overflow:hidden;
  box-shadow:0 6px 14px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.35);
}
.ios-glyph{
  position:relative;
  z-index:2;
  font-weight:900;
  line-height:1;
}

/* Apple-like phone app: green */
.phone-app{
  background:linear-gradient(180deg,#7cf08d,#2ecb59) !important;
}
.phone-app .ios-glyph{
  color:#fff !important;
  font-size:1rem !important;
}

/* Apple-like Facebook app */
.facebook-app{
  background:linear-gradient(180deg,#5c8fff,#2362ff) !important;
}
.facebook-app .ios-glyph{
  color:#fff !important;
  font-size:1.08rem !important;
  font-family:Arial,sans-serif !important;
  transform:translateY(.5px) !important;
}

/* Apple-like Mail app with visible envelope */
.email-app{
  background:linear-gradient(180deg,#ffffff,#dfe8ff) !important;
}
.email-app .ios-glyph{
  display:none !important;
}
.email-app .mail-envelope{
  position:absolute;
  left:5px;
  top:7px;
  width:18px;
  height:13px;
  border-radius:3px;
  border:1.8px solid #5a6f96;
  background:#ffffff;
  box-sizing:border-box;
}
.email-app .mail-envelope::before,
.email-app .mail-envelope::after{
  content:"";
  position:absolute;
  top:2px;
  width:9px;
  height:1.8px;
  background:#5a6f96;
}
.email-app .mail-envelope::before{
  left:1px;
  transform:rotate(33deg);
  transform-origin:left center;
}
.email-app .mail-envelope::after{
  right:1px;
  transform:rotate(-33deg);
  transform-origin:right center;
}
.small-mail{
  width:24px;
  height:24px;
  min-width:24px;
  border-radius:8px;
}

/* Contacts app icon */
.contacts-app{
  background:linear-gradient(180deg,#fffef7,#ece8de) !important;
}
.contacts-avatar{
  position:absolute;
  left:5px;
  top:5px;
  width:14px;
  height:14px;
  border-radius:50%;
  border:2px solid #a6a199;
  box-sizing:border-box;
}
.contacts-avatar::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-8px;
  transform:translateX(-50%);
  width:18px;
  height:10px;
  border-radius:12px 12px 8px 8px;
  border:2px solid #a6a199;
  border-top:none;
  box-sizing:border-box;
}
.contacts-band{
  position:absolute;
  top:0;
  right:0;
  width:5px;
  height:100%;
}
.contacts-band.blue{background:#6fc7ff}
.contacts-band.orange{right:5px;background:#f7a43b}
.contacts-band.green{right:10px;background:#7fd97f}

/* Dock contact app icon */
.dock-contact-app{
  width:22px;
  height:22px;
  min-width:22px;
  border-radius:7px;
  box-shadow:0 4px 10px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.32);
}
.dock-contact-app .contacts-avatar{
  left:3px;
  top:3px;
  width:11px;
  height:11px;
}
.dock-contact-app .contacts-avatar::after{
  bottom:-7px;
  width:14px;
  height:8px;
}
.dock-contact-app .contacts-band{
  width:4px;
}
.dock-contact-app .contacts-band.orange{right:4px}
.dock-contact-app .contacts-band.green{right:8px}

/* Dock alignment with custom icon */
.premium-dock a.save,
.secondary-premium-dock a.save{
  gap:5px;
}
.premium-dock a.save .sf-icon,
.secondary-premium-dock a.save .sf-icon{
  display:none !important;
}
.premium-dock a.save span:last-child,
.secondary-premium-dock a.save span:last-child{
  line-height:1.04;
  text-align:center;
}

/* Payment buttons and NFC action buttons with updated icons */
.mini-action,
.nfc-actions .btn{
  align-items:center;
  gap:12px;
}
.call-app-btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.facebook-btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
}

/* Ensure no broken undefined icon styles are needed */
.brand-app-icon,
.contact-inline-app-icon,
.contact-app-body,
.contact-app-avatar,
.contact-app-tabs,
.fb-app-icon,
.call-app-icon,
.wa-app-icon,
.wa-bubble,
.wa-phone-mark,
.fb-mark{
  all:unset;
}

/* Small-screen legibility */
@media (max-width:760px){
  .wa-icon{width:22px !important;height:22px !important;min-width:22px !important;}
  .wa-icon::before{left:3px !important; top:3px !important; width:16px !important; height:16px !important;}
}


/* ===== FINAL SITEWIDE ICON + BUTTON CONSISTENCY PASS ===== */
:root{
  --ui-btn-radius: 18px;
  --ui-btn-radius-lg: 22px;
  --ui-btn-height: 54px;
  --ui-btn-height-sm: 46px;
  --ui-icon-size: 28px;
  --ui-icon-size-sm: 24px;
  --ui-gap: 10px;
}

/* Shared alignment */
.btn,
.big-cta,
.glass-chip,
.chip,
.mini-action,
.pay-chip,
.social-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:var(--ui-gap) !important;
  text-decoration:none !important;
  vertical-align:middle !important;
}

/* Core button families */
.btn{
  min-height:var(--ui-btn-height) !important;
  padding:0 18px !important;
  border-radius:var(--ui-btn-radius) !important;
  font-weight:900 !important;
  line-height:1 !important;
}

.big-cta{
  min-height:70px !important;
  padding:0 22px !important;
  border-radius:var(--ui-btn-radius-lg) !important;
  font-size:1.12rem !important;
  line-height:1 !important;
}

.chip,
.glass-chip{
  min-height:42px !important;
  padding:0 14px !important;
  border-radius:999px !important;
  font-weight:900 !important;
  line-height:1 !important;
}

.pay-chip,
.mini-action{
  min-height:var(--ui-btn-height-sm) !important;
  border-radius:16px !important;
  padding:0 14px !important;
  justify-content:flex-start !important;
}

.pay-chip{
  gap:9px !important;
}

.mini-action{
  gap:12px !important;
}

/* Icon system */
.wa-icon,
.ios-app-icon,
.pay-app-icon,
.dock-contact-app{
  flex:0 0 auto !important;
}

.wa-icon{
  width:var(--ui-icon-size-sm) !important;
  height:var(--ui-icon-size-sm) !important;
  min-width:var(--ui-icon-size-sm) !important;
  border-radius:8px !important;
}

.ios-app-icon{
  width:var(--ui-icon-size) !important;
  height:var(--ui-icon-size) !important;
  min-width:var(--ui-icon-size) !important;
  border-radius:9px !important;
}

.pay-app-icon{
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  border-radius:8px !important;
  display:grid !important;
  place-items:center !important;
  font-weight:900 !important;
  box-shadow:0 5px 12px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.25) !important;
}

.dock-contact-app{
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  border-radius:7px !important;
}

/* App-specific icon colors */
.phone-app{
  background:linear-gradient(180deg,#7cf08d,#2ecb59) !important;
}
.phone-app .ios-glyph{
  color:#fff !important;
  font-size:1rem !important;
}

.facebook-app{
  background:linear-gradient(180deg,#5c8fff,#2362ff) !important;
}
.facebook-app .ios-glyph{
  color:#fff !important;
  font-size:1.08rem !important;
  font-family:Arial,sans-serif !important;
}

.email-app{
  background:linear-gradient(180deg,#ffffff,#dfe8ff) !important;
}
.email-app .mail-envelope{
  left:4px !important;
  top:7px !important;
  width:18px !important;
  height:13px !important;
  border:1.8px solid #5a6f96 !important;
  background:#fff !important;
}

.contacts-app{
  background:linear-gradient(180deg,#fffef7,#ece8de) !important;
}

/* WhatsApp buttons everywhere */
.btn.whatsapp,
.big-cta.navy,
.chip-ok.social-btn{
  gap:10px !important;
}

.btn.whatsapp span:last-child,
.big-cta span:last-child,
.social-btn span:last-child{
  display:inline-flex !important;
  align-items:center !important;
  gap:10px !important;
}

/* Payment methods layout */
.payments{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  margin-top:12px !important;
}

.pay-chip span:last-child{
  line-height:1 !important;
}

/* Contact action layout */
.contact-actions{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
  margin-top:0 !important;
}

.contact-actions .mini-action span:last-child{
  color:#fff !important;
  font-weight:900 !important;
  line-height:1.1 !important;
}

/* NFC button area */
.nfc-actions{
  display:grid !important;
  gap:10px !important;
}
.nfc-actions .btn{
  justify-content:flex-start !important;
  padding:0 16px !important;
}
.nfc-actions .btn.nfc-full{
  width:100% !important;
}

/* Dock consistency */
.premium-dock,
.secondary-premium-dock{
  padding:8px !important;
}

.premium-dock a,
.secondary-premium-dock a{
  min-height:62px !important;
  border-radius:22px !important;
  gap:5px !important;
  font-size:.78rem !important;
  font-weight:800 !important;
  line-height:1.02 !important;
  text-align:center !important;
}

.premium-dock a .sf-icon,
.secondary-premium-dock a .sf-icon{
  width:18px !important;
  height:18px !important;
}

.premium-dock a.save,
.secondary-premium-dock a.save{
  gap:5px !important;
}

/* Top brand chips */
.brand-chips{
  gap:10px !important;
}
.brand-chips .glass-chip{
  min-height:40px !important;
}

/* Experience/NFC top chips */
.toolbar-meta .chip{
  min-height:40px !important;
}

/* Better mobile consistency */
@media (max-width:760px){
  .btn{
    min-height:50px !important;
    padding:0 16px !important;
  }
  .big-cta{
    min-height:62px !important;
    padding:0 18px !important;
    font-size:1rem !important;
  }
  .chip,
  .glass-chip{
    min-height:38px !important;
    padding:0 12px !important;
    font-size:.84rem !important;
  }
  .pay-chip,
  .mini-action{
    min-height:44px !important;
    padding:0 12px !important;
  }
  .premium-dock a,
  .secondary-premium-dock a{
    min-height:58px !important;
    font-size:.68rem !important;
  }
}

@media (max-width:430px){
  .contact-actions{
    grid-template-columns:1fr !important;
  }
  .payments{
    gap:8px !important;
  }
}


/* ===== FINAL TYPOGRAPHY + HERO PREMIUM POLISH ===== */

/* Overall text refinement */
body{
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{
  text-wrap:balance;
}
p{
  text-wrap:pretty;
}

/* More refined page rhythm */
.app-shell{
  max-width:980px;
}
.brand-panel,
.hero-card,
.estimate-card,
.suggestion-strip,
.trust-strip,
.payments-contact{
  scroll-margin-top:18px;
}

/* Premium brand header balance */
.brand-panel{
  border-radius:30px !important;
}
.brand-main h1{
  text-shadow:0 8px 24px rgba(0,0,0,.22);
}
.brand-main p{
  letter-spacing:.01em;
}
.brand-kicker{
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.brand-chips .glass-chip{
  letter-spacing:.005em;
}

/* Hero: cleaner, more luxury, more readable */
.hero-card{
  border-radius:32px !important;
  background:linear-gradient(180deg,rgba(17,45,82,.82),rgba(5,16,31,.80)) !important;
}
.hero-bg{
  height:340px !important;
  background:
    linear-gradient(180deg, rgba(3,9,18,.03), rgba(3,9,18,.26)),
    url("assets/kia-real-hero.jpg") center 54%/cover no-repeat !important;
}
.hero-content{
  padding:26px 26px 18px !important;
  background:
    radial-gradient(circle at top left, rgba(255,216,126,.11), transparent 30%),
    linear-gradient(180deg, rgba(7,26,52,.98), rgba(4,13,25,.96)) !important;
}
.premium-label{
  color:var(--gold2) !important;
  font-size:.78rem !important;
  letter-spacing:.105em !important;
  margin-bottom:10px !important;
}
.hero-content h2{
  font-size:clamp(2.3rem,5.6vw,4.2rem) !important;
  line-height:.92 !important;
  letter-spacing:-.055em !important;
  max-width:13ch !important;
}
.hero-content h2 strong{
  color:#ffd86d !important;
}
.hero-content p{
  color:#eef4ff !important;
  font-size:1rem !important;
  line-height:1.5 !important;
  max-width:46ch !important;
}
.rating-badge{
  margin-top:10px !important;
  border-radius:18px !important;
  border-color:rgba(255,216,126,.28) !important;
  background:linear-gradient(180deg,rgba(9,27,51,.82),rgba(3,11,22,.72)) !important;
}
.rating-badge span{
  color:#ffd86d !important;
}
.rating-badge b{
  letter-spacing:.01em;
}
.hero-features{
  background:linear-gradient(180deg,rgba(6,20,39,.82),rgba(3,10,20,.86)) !important;
}
.hero-features span{
  font-weight:900 !important;
  letter-spacing:-.01em;
}
.hero-features svg{
  color:#ffd86d !important;
}

/* CTA hierarchy */
.primary-cta-row{
  gap:12px !important;
}
.big-cta.gold{
  color:#06172b !important;
}
.big-cta.gold span{
  font-weight:950 !important;
}
.big-cta.navy{
  border-color:rgba(255,216,126,.26) !important;
}

/* Quote calculator hierarchy */
.estimate-card{
  border-radius:30px !important;
}
.section-head h2,
.payments-card h2,
.suggestion-strip h2{
  font-size:clamp(1.7rem,4vw,2.35rem) !important;
  letter-spacing:-.045em !important;
}
.section-head p,
.payments-card p,
.suggestion-strip p{
  line-height:1.45 !important;
}
.field span{
  font-size:.88rem !important;
  letter-spacing:.01em;
}
.field select{
  font-weight:750 !important;
}
.estimate-panel{
  border-color:rgba(255,216,126,.18) !important;
}
.estimate-value{
  letter-spacing:-.03em;
}
.note-copy{
  font-size:.9rem !important;
}

/* Services feel more premium */
.photo-service{
  border-radius:26px !important;
}
.photo-service::before{
  opacity:.9 !important;
}
.photo-service h3{
  font-size:1.6rem !important;
}
.photo-service p{
  color:#eef4ff !important;
}

/* Suggestion and trust strips */
.suggestion-strip{
  border-radius:28px !important;
}
.small-gold-btn{
  white-space:nowrap;
}
.trust-strip{
  border-radius:26px !important;
}
.trust-strip span{
  font-weight:850 !important;
}

/* Payment text polish */
.deposit-note{
  font-size:.94rem !important;
}
.payments-card h2{
  margin-bottom:2px !important;
}

/* Secondary pages typography */
.title-block h1{
  text-shadow:0 8px 24px rgba(0,0,0,.22);
}
.exp-card .copy h2{
  text-wrap:balance;
}
.exp-card .copy p{
  font-size:.96rem !important;
}

/* Mobile hero and header tuning */
@media (max-width:760px){
  .brand-panel{
    border-radius:26px !important;
  }
  .brand-kicker{
    font-size:.6rem !important;
    letter-spacing:.052em !important;
  }
  .brand-main h1{
    font-size:1.42rem !important;
  }
  .brand-main p{
    font-size:.84rem !important;
  }
  .hero-card{
    border-radius:26px !important;
  }
  .hero-bg{
    height:230px !important;
    background-position:center 55% !important;
  }
  .hero-content{
    padding:18px 18px 15px !important;
  }
  .premium-label{
    font-size:.68rem !important;
    margin-bottom:8px !important;
  }
  .hero-content h2{
    font-size:2.12rem !important;
    line-height:.94 !important;
    max-width:10.5ch !important;
  }
  .hero-content p{
    font-size:.92rem !important;
    line-height:1.42 !important;
  }
  .rating-badge{
    border-radius:16px !important;
  }
  .primary-cta-row{
    gap:10px !important;
  }
  .section-head h2,
  .payments-card h2,
  .suggestion-strip h2{
    font-size:1.55rem !important;
  }
  .photo-service h3{
    font-size:1.35rem !important;
  }
}

@media (max-width:430px){
  .app-shell{
    padding-left:10px !important;
    padding-right:10px !important;
  }
  .brand-main h1{
    font-size:1.25rem !important;
  }
  .brand-main p{
    font-size:.78rem !important;
  }
  .hero-bg{
    height:210px !important;
  }
  .hero-content h2{
    font-size:1.92rem !important;
    max-width:10ch !important;
  }
  .hero-content p{
    font-size:.88rem !important;
  }
  .rating-badge b,
  .rating-badge small{
    font-size:.78rem !important;
  }
}


/* FINAL FIX: Ancestral card tags */
.experience-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:12px 0 14px;
}
.experience-tags span{
  display:inline-flex;
  min-height:32px;
  align-items:center;
  padding:0 10px;
  border-radius:999px;
  background:rgba(255,216,126,.12);
  border:1px solid rgba(255,216,126,.18);
  color:#ffd86d;
  font-size:.78rem;
  font-weight:900;
}
.ancestral-card .copy p{
  max-width:64ch;
}

/* FINAL FIX: remove old undefined icon wrappers */
.brand-app-icon,
.wa-app-icon,
.wa-bubble,
.wa-phone-mark,
.contact-inline-app-icon,
.contact-app-body,
.contact-app-avatar,
.contact-app-tabs,
.fb-app-icon,
.fb-mark,
.call-app-icon{
  all:unset;
}

/* FINAL FIX: WhatsApp app-style icon */
.wa-icon{
  position:relative !important;
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  display:inline-block !important;
  border-radius:8px !important;
  background:linear-gradient(180deg,#43e373,#18b655) !important;
  box-shadow:0 6px 14px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.30) !important;
  vertical-align:middle !important;
}
.wa-icon::before{
  content:"" !important;
  position:absolute !important;
  left:4px !important;
  top:4px !important;
  width:16px !important;
  height:16px !important;
  border-radius:50% !important;
  background:#fff !important;
}
.wa-icon::after{
  content:"☎" !important;
  position:absolute !important;
  inset:0 !important;
  display:grid !important;
  place-items:center !important;
  color:#18b655 !important;
  font-size:.74rem !important;
  font-weight:900 !important;
  transform:translateY(-.2px) !important;
}

/* FINAL FIX: shared app-style icons */
.ios-app-icon{
  position:relative;
  width:28px;
  height:28px;
  min-width:28px;
  border-radius:9px;
  display:grid;
  place-items:center;
  overflow:hidden;
  box-shadow:0 6px 14px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.35);
}
.ios-glyph{
  position:relative;
  z-index:2;
  font-weight:900;
  line-height:1;
}
.phone-app{
  background:linear-gradient(180deg,#7cf08d,#2ecb59) !important;
}
.phone-app .ios-glyph{
  color:#fff !important;
}
.email-app{
  background:linear-gradient(180deg,#ffffff,#dfe8ff) !important;
}
.email-app .mail-envelope{
  position:absolute;
  left:5px;
  top:7px;
  width:18px;
  height:13px;
  border-radius:3px;
  border:1.8px solid #5a6f96;
  background:#fff;
}
.email-app .mail-envelope::before,
.email-app .mail-envelope::after{
  content:"";
  position:absolute;
  top:2px;
  width:9px;
  height:1.8px;
  background:#5a6f96;
}
.email-app .mail-envelope::before{
  left:1px;
  transform:rotate(33deg);
  transform-origin:left center;
}
.email-app .mail-envelope::after{
  right:1px;
  transform:rotate(-33deg);
  transform-origin:right center;
}
.contacts-app{
  background:linear-gradient(180deg,#fffef7,#ece8de) !important;
}
.contacts-avatar{
  position:absolute;
  left:5px;
  top:5px;
  width:14px;
  height:14px;
  border-radius:50%;
  border:2px solid #a6a199;
  box-sizing:border-box;
}
.contacts-avatar::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-8px;
  transform:translateX(-50%);
  width:18px;
  height:10px;
  border-radius:12px 12px 8px 8px;
  border:2px solid #a6a199;
  border-top:none;
  box-sizing:border-box;
}
.contacts-band{
  position:absolute;
  top:0;
  right:0;
  width:5px;
  height:100%;
}
.contacts-band.blue{background:#6fc7ff}
.contacts-band.orange{right:5px;background:#f7a43b}
.contacts-band.green{right:10px;background:#7fd97f}

.dock-contact-app{
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  border-radius:7px !important;
}
.dock-contact-app .contacts-avatar{
  left:3px;
  top:3px;
  width:11px;
  height:11px;
}
.dock-contact-app .contacts-avatar::after{
  bottom:-7px;
  width:14px;
  height:8px;
}
.dock-contact-app .contacts-band{width:4px}
.dock-contact-app .contacts-band.orange{right:4px}
.dock-contact-app .contacts-band.green{right:8px}

/* FINAL FIX: consistent button icon alignment */
.social-btn,
.btn,
.big-cta,
.chip,
.mini-action{
  display:inline-flex !important;
  align-items:center !important;
  gap:10px !important;
}
.btn span:last-child,
.big-cta span:last-child,
.chip span:last-child{
  display:inline-flex !important;
  align-items:center !important;
  gap:10px !important;
}

/* FINAL FIX: hide old card svg only inside save-contact dock item */
.premium-dock a.save > svg,
.secondary-premium-dock a.save > svg{
  display:none !important;
}


/* Compact top header + gold phone chip */
.brand-panel{
  padding:14px 14px 12px !important;
}
.brand-main{
  gap:10px !important;
  align-items:flex-start !important;
}
.brand-main img{
  width:52px !important;
  height:52px !important;
}
.brand-kicker{
  min-height:22px !important;
  padding:0 8px !important;
  font-size:.64rem !important;
  letter-spacing:.05em !important;
  margin-bottom:1px !important;
}
.brand-main h1{
  font-size:1.44rem !important;
  line-height:.96 !important;
}
.brand-main p{
  margin-top:1px !important;
  font-size:.84rem !important;
}
.brand-controls{
  top:12px !important;
  right:12px !important;
}
.language-pills{
  padding:3px !important;
}
.lang-choice{
  height:34px !important;
  padding:0 12px !important;
  font-size:.86rem !important;
}
.brand-chips{
  margin-top:10px !important;
  gap:8px !important;
}
.glass-chip{
  min-height:38px !important;
  padding:0 12px !important;
  font-size:.83rem !important;
}
.phone-highlight{
  min-height:40px !important;
  background:linear-gradient(180deg,#ffe595 0%,#d7a943 53%,#a97924 100%) !important;
  border:1px solid rgba(255,229,149,.68) !important;
  box-shadow:0 10px 24px rgba(217,173,73,.24), inset 0 1px 0 rgba(255,255,255,.45) !important;
  color:#2a4170 !important;
}
.phone-highlight .sf-icon,
.phone-highlight span{
  color:#2a4170 !important;
}
@media (max-width:760px){
  .brand-panel{
    padding:12px 12px 10px !important;
    border-radius:22px !important;
  }
  .brand-main{
    gap:9px !important;
  }
  .brand-main img{
    width:46px !important;
    height:46px !important;
  }
  .brand-main h1{
    font-size:1.28rem !important;
  }
  .brand-main p{
    font-size:.77rem !important;
  }
  .brand-kicker{
    font-size:.58rem !important;
    min-height:20px !important;
    padding:0 7px !important;
  }
  .brand-controls{
    position:absolute !important;
    top:10px !important;
    right:10px !important;
    margin-top:0 !important;
  }
  .language-pills{
    padding:2px !important;
  }
  .lang-choice{
    height:30px !important;
    min-width:42px !important;
    padding:0 10px !important;
    font-size:.8rem !important;
  }
  .brand-copy{
    max-width:calc(100% - 84px) !important;
  }
  .brand-chips{
    grid-template-columns:repeat(2,minmax(0,max-content)) !important;
    margin-top:8px !important;
    gap:7px !important;
  }
  .brand-chips .phone-highlight{
    grid-column:1 / -1 !important;
  }
  .glass-chip{
    min-height:34px !important;
    padding:0 11px !important;
    font-size:.77rem !important;
    border-radius:14px !important;
  }
  .glass-chip .sf-icon{
    width:14px !important;
    height:14px !important;
  }
  .phone-highlight{
    min-height:36px !important;
    width:max-content !important;
  }
}
@media (max-width:430px){
  .brand-panel{
    padding:11px 11px 9px !important;
  }
  .brand-main img{
    width:42px !important;
    height:42px !important;
  }
  .brand-main h1{
    font-size:1.18rem !important;
  }
  .brand-main p{
    font-size:.72rem !important;
  }
  .brand-copy{
    max-width:calc(100% - 76px) !important;
  }
  .brand-kicker{
    max-width:180px !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  .brand-controls{
    top:8px !important;
    right:8px !important;
  }
  .lang-choice{
    height:28px !important;
    min-width:40px !important;
    padding:0 9px !important;
    font-size:.76rem !important;
  }
  .brand-chips{
    margin-top:7px !important;
  }
  .glass-chip{
    min-height:32px !important;
    padding:0 10px !important;
    font-size:.73rem !important;
  }
  .phone-highlight{
    font-size:.75rem !important;
  }
}


/* Second pass: more app-like, more visible content above the fold */
.app-shell{
  padding-top:14px !important;
}
.hero-card{
  margin-top:10px !important;
  border-radius:24px !important;
  overflow:hidden !important;
}
.hero-bg{
  height:190px !important;
  background-position:center 52% !important;
}
.hero-content{
  padding:14px 16px 12px !important;
}
.premium-label{
  margin-bottom:6px !important;
  font-size:.66rem !important;
}
.hero-content h2{
  font-size:1.9rem !important;
  line-height:.92 !important;
  max-width:9.8ch !important;
  margin-bottom:8px !important;
}
.hero-content p{
  font-size:.86rem !important;
  line-height:1.34 !important;
  margin:0 0 10px !important;
}
.rating-badge{
  padding:9px 12px !important;
  border-radius:16px !important;
  gap:0 8px !important;
}
.rating-badge span{
  font-size:1.25rem !important;
}
.rating-badge b{
  font-size:.82rem !important;
}
.rating-badge small{
  font-size:.76rem !important;
}
.hero-features{
  position:relative !important;
  bottom:auto !important;
  left:auto !important;
  right:auto !important;
  border-top:1px solid rgba(255,216,126,.16) !important;
}
.hero-features span{
  padding:10px 6px !important;
  font-size:.8rem !important;
  line-height:1.15 !important;
}
.hero-features svg{
  width:14px !important;
  height:14px !important;
}
@media (max-width:760px){
  .app-shell{
    padding-top:12px !important;
  }
  .hero-card{
    margin-top:8px !important;
    border-radius:22px !important;
  }
  .hero-bg{
    height:172px !important;
  }
  .hero-content{
    padding:12px 14px 10px !important;
  }
  .premium-label{
    margin-bottom:5px !important;
    font-size:.62rem !important;
  }
  .hero-content h2{
    font-size:1.68rem !important;
    max-width:9.2ch !important;
    margin-bottom:6px !important;
  }
  .hero-content p{
    font-size:.82rem !important;
    line-height:1.3 !important;
    margin-bottom:8px !important;
  }
  .rating-badge{
    padding:8px 10px !important;
    border-radius:14px !important;
  }
  .rating-badge span{
    font-size:1.05rem !important;
  }
  .rating-badge b{
    font-size:.76rem !important;
  }
  .rating-badge small{
    font-size:.69rem !important;
  }
  .hero-features span{
    padding:8px 5px !important;
    font-size:.73rem !important;
    gap:6px !important;
  }
}
@media (max-width:430px){
  .app-shell{
    padding-top:10px !important;
    padding-left:10px !important;
    padding-right:10px !important;
  }
  .hero-bg{
    height:160px !important;
  }
  .hero-content{
    padding:11px 12px 9px !important;
  }
  .hero-content h2{
    font-size:1.52rem !important;
    max-width:9ch !important;
  }
  .hero-content p{
    font-size:.78rem !important;
  }
  .rating-badge{
    width:100% !important;
    max-width:max-content !important;
  }
  .hero-features{
    grid-template-columns:repeat(3,1fr) !important;
  }
  .hero-features span{
    flex-direction:column !important;
    text-align:center !important;
    justify-content:center !important;
    min-height:54px !important;
    padding:7px 4px !important;
    font-size:.68rem !important;
  }
}


/* --- Final icon cleanup: WhatsApp / Email / Phone / Facebook --- */
.wa-icon {
  position:relative !important;
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  border-radius:7px !important;
  display:inline-block !important;
  vertical-align:middle !important;
  background:linear-gradient(180deg,#43e373 0%, #19b95b 100%) !important;
  box-shadow:0 6px 14px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.32) !important;
  overflow:hidden !important;
}
.wa-icon::before {
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background-image:url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20fill%3D%27white%27%20d%3D%27M19.11%204.89A9.95%209.95%200%200%200%203.76%2016.79L2.4%2021.6l4.94-1.29A9.95%209.95%200%201%200%2019.11%204.89Zm-7.16%2015.9a8.29%208.29%200%200%201-4.22-1.16l-.3-.18-2.93.77.78-2.85-.2-.3A8.32%208.32%200%201%201%2012%2020.79Zm4.57-6.22c-.25-.12-1.48-.73-1.71-.82-.23-.08-.39-.12-.56.12-.16.24-.64.82-.78.98-.14.16-.28.18-.53.06-.25-.12-1.05-.39-2-1.24-.74-.66-1.24-1.47-1.38-1.72-.14-.24-.02-.38.1-.5.11-.11.25-.28.37-.42.12-.14.16-.24.24-.41.08-.16.04-.31-.02-.43-.06-.12-.56-1.35-.77-1.85-.2-.48-.41-.41-.56-.42h-.48c-.16%200-.43.06-.65.31-.22.24-.85.83-.85%202.03%200%201.2.87%202.35.99%202.51.12.16%201.72%202.62%204.16%203.67.58.25%201.04.4%201.39.51.58.18%201.1.16%201.51.1.46-.07%201.48-.61%201.69-1.19.21-.58.21-1.08.14-1.19-.06-.1-.23-.16-.48-.28Z%27/%3E%3C/svg%3E') !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:74% 74% !important;
}
.wa-icon::after {
  content:none !important;
}

.ios-app-icon.phone-app,
.pay-icon.phone,
.method-icon.phone {
  position:relative !important;
  background:linear-gradient(180deg,#76ed88 0%, #24c257 100%) !important;
}
.ios-app-icon.phone-app .ios-glyph {
  opacity:0 !important;
}
.ios-app-icon.phone-app::before {
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background-image:url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20fill%3D%27white%27%20d%3D%27M6.62%202.93c.3-.28.72-.4%201.12-.31l2.73.62c.49.11.85.53.89%201.03l.19%202.45c.03.39-.08.77-.31%201.08l-1.55%202.04a14.57%2014.57%200%200%200%204.48%204.48l2.04-1.55c.31-.23.69-.34%201.08-.31l2.45.19c.5.04.92.4%201.03.89l.62%202.73c.09.4-.03.82-.31%201.12l-1.22%201.32c-.47.51-1.17.73-1.85.6-3.59-.69-7.08-2.92-9.83-5.67C6.17%2012.89%203.94%209.4%203.25%205.81c-.13-.68.09-1.38.6-1.85l1.32-1.03Z%27/%3E%3C/svg%3E') !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:58% 58% !important;
}

.ios-app-icon.facebook-app {
  position:relative !important;
  background:linear-gradient(180deg,#5f91ff 0%, #245fff 100%) !important;
}
.ios-app-icon.facebook-app .ios-glyph {
  opacity:0 !important;
}
.ios-app-icon.facebook-app::before {
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background-image:url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20fill%3D%27white%27%20d%3D%27M13.43%2021v-7.1h2.39l.36-2.77h-2.75V9.35c0-.8.22-1.35%201.38-1.35H16.3V5.53c-.26-.03-1.14-.11-2.17-.11-2.15%200-3.63%201.31-3.63%203.73v1.98H8.06v2.77h2.44V21h2.93Z%27/%3E%3C/svg%3E') !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:50% 50% !important;
}

.ios-app-icon.email-app {
  position:relative !important;
  background:linear-gradient(180deg,#56a8ff 0%, #2d6dff 100%) !important;
}
.ios-app-icon.email-app .ios-glyph,
.ios-app-icon.email-app .mail-envelope {
  opacity:0 !important;
}
.ios-app-icon.email-app::before {
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background-image:url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20fill%3D%27white%27%20d%3D%27M3%206.75A1.75%201.75%200%200%201%204.75%205h14.5A1.75%201.75%200%200%201%2021%206.75v10.5A1.75%201.75%200%200%201%2019.25%2019H4.75A1.75%201.75%200%200%201%203%2017.25V6.75Zm1.5.26%207.1%205.07a.75.75%200%200%200%20.88%200l7.02-5.02a.25.25%200%200%200-.25-.06H4.75c-.09%200-.18%200-.25.01ZM19.5%208.94l-6.44%204.6a1.75%201.75%200%200%201-2.04%200L4.5%208.89v8.36c0%20.14.11.25.25.25h14.5c.14%200%20.25-.11.25-.25V8.94Z%27/%3E%3C/svg%3E') !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:68% 68% !important;
}

.btn.whatsapp, .social-btn .wa-icon {
  flex-shrink:0 !important;
}


/* --- Final sitewide cleanup and consistency pass --- */
.btn,
.big-cta,
.mini-action,
.glass-chip,
.social-btn,
.premium-dock a,
.bottom-dock a,
.secondary-premium-dock a {
  align-items:center !important;
}
.brand-chips,
.contact-actions,
.modal-actions,
.nfc-actions {
  row-gap:12px !important;
}
.contact-actions .mini-action,
.nfc-actions .btn,
.modal-actions a {
  min-height:54px;
}
.big-cta,
.mini-action,
.social-btn,
.glass-chip {
  gap:.68rem !important;
}
.wa-icon,
.ios-app-icon,
.pay-app-icon,
.dock-contact-app,
.contact-app-dock-icon {
  flex-shrink:0 !important;
}


/* === FINAL VISUAL FIXES: WhatsApp icons, email icons, phone chip, experience media === */
.wa-icon{
  position:relative !important;
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  border-radius:7px !important;
  display:inline-block !important;
  background:linear-gradient(180deg,#43e373 0%,#19b95b 100%) !important;
  box-shadow:0 6px 14px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.28) !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M19.11 4.89A9.95 9.95 0 0 0 3.76 16.79L2.4 21.6l4.94-1.29A9.95 9.95 0 1 0 19.11 4.89Zm-7.16 15.9a8.29 8.29 0 0 1-4.22-1.16l-.3-.18-2.93.77.78-2.85-.2-.3A8.32 8.32 0 1 1 12 20.79Zm4.57-6.22c-.25-.12-1.48-.73-1.71-.82-.23-.08-.39-.12-.56.12-.16.24-.64.82-.78.98-.14.16-.28.18-.53.06-.25-.12-1.05-.39-2-1.24-.74-.66-1.24-1.47-1.38-1.72-.14-.24-.02-.38.1-.5.11-.11.25-.28.37-.42.12-.14.16-.24.24-.41.08-.16.04-.31-.02-.43-.06-.12-.56-1.35-.77-1.85-.2-.48-.41-.41-.56-.42h-.48c-.16 0-.43.06-.65.31-.22.24-.85.83-.85 2.03 0 1.2.87 2.35.99 2.51.12.16 1.72 2.62 4.16 3.67.58.25 1.04.4 1.39.51.58.18 1.1.16 1.51.1.46-.07 1.48-.61 1.69-1.19.21-.58.21-1.08.14-1.19-.06-.1-.23-.16-.48-.28Z'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:74% 74% !important;
}
.wa-icon::before,.wa-icon::after{content:none !important; display:none !important;}

.ios-app-icon.phone-app,
.ios-app-icon.facebook-app,
.ios-app-icon.email-app{
  position:relative !important;
  overflow:hidden !important;
}
.ios-app-icon.phone-app .ios-glyph,
.ios-app-icon.facebook-app .ios-glyph,
.ios-app-icon.email-app .ios-glyph,
.ios-app-icon.email-app .mail-envelope{opacity:0 !important;}
.ios-app-icon.phone-app::before,
.ios-app-icon.facebook-app::before,
.ios-app-icon.email-app::before,
.ios-app-icon.email-app::after{content:none !important; display:none !important;}
.ios-app-icon.phone-app{
  background:linear-gradient(180deg,#76ed88 0%,#24c257 100%) !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M6.62 2.93c.3-.28.72-.4 1.12-.31l2.73.62c.49.11.85.53.89 1.03l.19 2.45c.03.39-.08.77-.31 1.08l-1.55 2.04a14.57 14.57 0 0 0 4.48 4.48l2.04-1.55c.31-.23.69-.34 1.08-.31l2.45.19c.5.04.92.4 1.03.89l.62 2.73c.09.4-.03.82-.31 1.12l-1.22 1.32c-.47.51-1.17.73-1.85.6-3.59-.69-7.08-2.92-9.83-5.67C6.17 12.89 3.94 9.4 3.25 5.81c-.13-.68.09-1.38.6-1.85l1.32-1.03Z'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:58% 58% !important;
}
.ios-app-icon.facebook-app{
  background:linear-gradient(180deg,#5f91ff 0%,#245fff 100%) !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M13.43 21v-7.1h2.39l.36-2.77h-2.75V9.35c0-.8.22-1.35 1.38-1.35h1.49V5.53c-.26-.03-1.14-.11-2.17-.11-2.15 0-3.63 1.31-3.63 3.73v1.98H8.06v2.77h2.44V21h2.93Z'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:50% 50% !important;
}
.ios-app-icon.email-app{
  background:linear-gradient(180deg,#56a8ff 0%,#2d6dff 100%) !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M3 6.75A1.75 1.75 0 0 1 4.75 5h14.5A1.75 1.75 0 0 1 21 6.75v10.5A1.75 1.75 0 0 1 19.25 19H4.75A1.75 1.75 0 0 1 3 17.25V6.75Zm1.5.26 7.1 5.07a.75.75 0 0 0 .88 0l7.02-5.02a.25.25 0 0 0-.25-.06H4.75c-.09 0-.18 0-.25.01ZM19.5 8.94l-6.44 4.6a1.75 1.75 0 0 1-2.04 0L4.5 8.89v8.36c0 .14.11.25.25.25h14.5c.14 0 .25-.11.25-.25V8.94Z'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:68% 68% !important;
}

.phone-highlight{
  color:#0f2d61 !important;
}
.phone-highlight .sf-icon,
.phone-highlight span{
  color:#0f2d61 !important;
}

.exp-card.luquillo-card .media,
.exp-card.ancestral-card .media{
  background:#ffffff !important;
}
.exp-card.luquillo-card .media img,
.exp-card.ancestral-card .media img{
  height:auto !important;
  min-height:0 !important;
  object-fit:contain !important;
  display:block !important;
}
@media (max-width:760px){
  .exp-card.luquillo-card .media img,
  .exp-card.ancestral-card .media img{
    height:auto !important;
    max-height:none !important;
  }
}


/* === Final contact + icon polish === */
.wa-icon{
  position:relative !important;
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  display:inline-block !important;
  border-radius:7px !important;
  background:linear-gradient(180deg,#46e57b 0%,#18ba57 100%) !important;
  box-shadow:0 6px 14px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.30) !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M19.11 4.89A9.95 9.95 0 0 0 3.76 16.79L2.4 21.6l4.94-1.29A9.95 9.95 0 1 0 19.11 4.89Zm-7.16 15.9a8.29 8.29 0 0 1-4.22-1.16l-.3-.18-2.93.77.78-2.85-.2-.3A8.32 8.32 0 1 1 12 20.79Zm4.57-6.22c-.25-.12-1.48-.73-1.71-.82-.23-.08-.39-.12-.56.12-.16.24-.64.82-.78.98-.14.16-.28.18-.53.06-.25-.12-1.05-.39-2-1.24-.74-.66-1.24-1.47-1.38-1.72-.14-.24-.02-.38.1-.5.11-.11.25-.28.37-.42.12-.14.16-.24.24-.41.08-.16.04-.31-.02-.43-.06-.12-.56-1.35-.77-1.85-.2-.48-.41-.41-.56-.42h-.48c-.16 0-.43.06-.65.31-.22.24-.85.83-.85 2.03 0 1.2.87 2.35.99 2.51.12.16 1.72 2.62 4.16 3.67.58.25 1.04.4 1.39.51.58.18 1.1.16 1.51.1.46-.07 1.48-.61 1.69-1.19.21-.58.21-1.08.14-1.19-.06-.1-.23-.16-.48-.28Z'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:74% 74% !important;
}
.wa-icon::before,.wa-icon::after{content:none !important;display:none !important;}

.contact-actions .mini-action,
.nfc-actions .btn{
  min-height:56px !important;
}
.contact-actions .mini-action .ios-app-icon,
.nfc-actions .btn .ios-app-icon,
.modal-actions a .ios-app-icon,
.modal-actions a .wa-icon{
  width:30px !important;
  height:30px !important;
  min-width:30px !important;
  border-radius:10px !important;
}

.ios-app-icon.phone-app,
.ios-app-icon.facebook-app,
.ios-app-icon.email-app{
  overflow:hidden !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
}
.ios-app-icon.phone-app .ios-glyph,
.ios-app-icon.facebook-app .ios-glyph,
.ios-app-icon.email-app .ios-glyph,
.ios-app-icon.email-app .mail-envelope{
  opacity:0 !important;
}
.ios-app-icon.phone-app{
  background:linear-gradient(180deg,#7bf08c 0%,#27c85c 100%) !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M6.62 2.93c.3-.28.72-.4 1.12-.31l2.73.62c.49.11.85.53.89 1.03l.19 2.45c.03.39-.08.77-.31 1.08l-1.55 2.04a14.57 14.57 0 0 0 4.48 4.48l2.04-1.55c.31-.23.69-.34 1.08-.31l2.45.19c.5.04.92.4 1.03.89l.62 2.73c.09.4-.03.82-.31 1.12l-1.22 1.32c-.47.51-1.17.73-1.85.6-3.59-.69-7.08-2.92-9.83-5.67C6.17 12.89 3.94 9.4 3.25 5.81c-.13-.68.09-1.38.6-1.85l1.32-1.03Z'/%3E%3C/svg%3E") !important;
  background-size:58% 58% !important;
}
.ios-app-icon.facebook-app{
  background:linear-gradient(180deg,#5f91ff 0%,#245fff 100%) !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M13.43 21v-7.1h2.39l.36-2.77h-2.75V9.35c0-.8.22-1.35 1.38-1.35h1.49V5.53c-.26-.03-1.14-.11-2.17-.11-2.15 0-3.63 1.31-3.63 3.73v1.98H8.06v2.77h2.44V21h2.93Z'/%3E%3C/svg%3E") !important;
  background-size:50% 50% !important;
}
.ios-app-icon.email-app{
  background:linear-gradient(180deg,#5fb2ff 0%,#2f6fff 100%) !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M3 6.75A1.75 1.75 0 0 1 4.75 5h14.5A1.75 1.75 0 0 1 21 6.75v10.5A1.75 1.75 0 0 1 19.25 19H4.75A1.75 1.75 0 0 1 3 17.25V6.75Zm1.25.47 7.35 5.3a.67.67 0 0 0 .8 0l7.35-5.3a.25.25 0 0 0-.15-.47H4.4a.25.25 0 0 0-.15.47Zm15.25 1.8-6.66 4.8a1.67 1.67 0 0 1-1.94 0L4.25 9v8.25c0 .14.11.25.25.25h15c.14 0 .25-.11.25-.25V9.02Z'/%3E%3C/svg%3E") !important;
  background-size:68% 68% !important;
}

/* Keep the top phone text in the dark navy used across the page */
.phone-highlight,
.phone-highlight span,
.phone-highlight .sf-icon{
  color:#0f2d61 !important;
}

/* ===== Final iPhone icon pass using uploaded reference examples ===== */
.wa-icon,
.ios-app-icon.phone-app,
.ios-app-icon.facebook-app,
.ios-app-icon.email-app,
.ios-app-icon.contacts-app,
.dock-contact-app,
.contact-app-dock-icon{
  position:relative !important;
  display:inline-block !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:cover !important;
  overflow:hidden !important;
  box-shadow:none !important;
}

/* hide all legacy glyphs/pseudo icon drawings */
.wa-icon::before,
.wa-icon::after,
.ios-app-icon.phone-app::before,
.ios-app-icon.phone-app::after,
.ios-app-icon.facebook-app::before,
.ios-app-icon.facebook-app::after,
.ios-app-icon.email-app::before,
.ios-app-icon.email-app::after,
.ios-app-icon.contacts-app::before,
.ios-app-icon.contacts-app::after,
.dock-contact-app::before,
.dock-contact-app::after,
.contact-app-dock-icon::before,
.contact-app-dock-icon::after{
  content:none !important;
  display:none !important;
}
.wa-icon > *,
.ios-app-icon.phone-app > *,
.ios-app-icon.facebook-app > *,
.ios-app-icon.email-app > *,
.ios-app-icon.contacts-app > *,
.dock-contact-app > *,
.contact-app-dock-icon > *{
  opacity:0 !important;
  visibility:hidden !important;
}

/* icon sources */
.wa-icon{
  width:26px !important;
  height:26px !important;
  min-width:26px !important;
  border-radius:9px !important;
  background-image:url('assets/icons/whatsapp-app-ref.png') !important;
}
.btn.whatsapp .wa-icon,
.big-cta .wa-icon,
.social-btn .wa-icon,
.chip .wa-icon,
.chip-ok .wa-icon{
  width:26px !important;
  height:26px !important;
  min-width:26px !important;
}

.ios-app-icon.phone-app{
  width:26px !important;
  height:26px !important;
  min-width:26px !important;
  border-radius:9px !important;
  background-image:url('assets/icons/phone-app-ref.png') !important;
}
.ios-app-icon.facebook-app{
  width:26px !important;
  height:26px !important;
  min-width:26px !important;
  border-radius:9px !important;
  background-image:url('assets/icons/facebook-app-ref.png') !important;
}
.ios-app-icon.email-app{
  width:26px !important;
  height:26px !important;
  min-width:26px !important;
  border-radius:9px !important;
  background-image:url('assets/icons/email-app-ref.png') !important;
}
.ios-app-icon.contacts-app,
.dock-contact-app,
.contact-app-dock-icon{
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  border-radius:10px !important;
  background-image:url('assets/icons/contacts-app-ref.png') !important;
}

/* slightly larger save-contact icon inside the dock for stronger visibility */
.save-contact-dock .contact-app-dock-icon,
.save .dock-contact-app,
.bottom-dock .dock-contact-app,
.premium-dock .dock-contact-app{
  width:30px !important;
  height:30px !important;
  min-width:30px !important;
  border-radius:11px !important;
}

/* keep icon/text spacing tidy */
.big-cta,
.btn,
.social-btn,
.mini-action,
.row-chip,
.contact-links a,
.nfc-actions .btn{
  gap:10px !important;
}

/* top phone number chip: keep navy text as requested */
.phone-highlight,
.phone-highlight span,
.phone-highlight .sf-icon,
.phone-highlight .phone-label{
  color:#0f2d61 !important;
}


/* =========================================================
   FINAL IPHONE POLISH PASS
   Focus: icons, compact header, hero balance, quote clarity,
   experience cards, contact/payment, dock and NFC.
   ========================================================= */

/* iPhone baseline rhythm */
@media (max-width:760px){
  html{scroll-padding-bottom:128px;}
  body{overflow-x:hidden;}
  .app-shell{
    padding:8px 10px 128px !important;
  }
}

/* 1) Final app icon language */
.wa-icon,
.ios-app-icon.phone-app,
.ios-app-icon.facebook-app,
.ios-app-icon.email-app,
.ios-app-icon.contacts-app,
.dock-contact-app,
.contact-app-dock-icon{
  position:relative !important;
  display:inline-block !important;
  flex:0 0 auto !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:cover !important;
  box-shadow:none !important;
  overflow:hidden !important;
}
.wa-icon::before,.wa-icon::after,
.ios-app-icon.phone-app::before,.ios-app-icon.phone-app::after,
.ios-app-icon.facebook-app::before,.ios-app-icon.facebook-app::after,
.ios-app-icon.email-app::before,.ios-app-icon.email-app::after,
.ios-app-icon.contacts-app::before,.ios-app-icon.contacts-app::after,
.dock-contact-app::before,.dock-contact-app::after,
.contact-app-dock-icon::before,.contact-app-dock-icon::after{
  content:none !important;
  display:none !important;
}
.wa-icon > *,
.ios-app-icon.phone-app > *,
.ios-app-icon.facebook-app > *,
.ios-app-icon.email-app > *,
.ios-app-icon.contacts-app > *,
.dock-contact-app > *,
.contact-app-dock-icon > *{
  opacity:0 !important;
  visibility:hidden !important;
}
.wa-icon{
  width:26px !important;
  height:26px !important;
  min-width:26px !important;
  border-radius:9px !important;
  background-image:url('assets/icons/whatsapp-app-ref.png') !important;
}
.ios-app-icon.phone-app{
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  border-radius:10px !important;
  background-image:url('assets/icons/phone-app-ref.png') !important;
}
.ios-app-icon.facebook-app{
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  border-radius:10px !important;
  background-image:url('assets/icons/facebook-app-ref.png') !important;
}
.ios-app-icon.email-app{
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  border-radius:10px !important;
  background-image:url('assets/icons/email-app-ref.png') !important;
}
.ios-app-icon.contacts-app,
.dock-contact-app,
.contact-app-dock-icon{
  width:30px !important;
  height:30px !important;
  min-width:30px !important;
  border-radius:11px !important;
  background-image:url('assets/icons/contacts-app-ref.png') !important;
}

/* 2) Compact premium home top */
@media (max-width:760px){
  .brand-panel{
    padding:10px 11px 10px !important;
    border-radius:22px !important;
    margin-bottom:8px !important;
  }
  .brand-main{
    gap:8px !important;
    align-items:flex-start !important;
  }
  .brand-main img{
    width:42px !important;
    height:42px !important;
    padding:4px !important;
  }
  .brand-copy{
    max-width:calc(100% - 78px) !important;
  }
  .brand-kicker{
    min-height:19px !important;
    padding:0 7px !important;
    font-size:.55rem !important;
    letter-spacing:.05em !important;
    max-width:175px !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  .brand-main h1{
    font-size:1.18rem !important;
    line-height:.96 !important;
  }
  .brand-main p{
    font-size:.72rem !important;
    line-height:1.05 !important;
  }
  .brand-controls{
    top:8px !important;
    right:8px !important;
  }
  .language-pills{padding:2px !important;}
  .lang-choice{
    height:28px !important;
    min-width:39px !important;
    font-size:.76rem !important;
    padding:0 9px !important;
  }
  .brand-chips{
    margin-top:7px !important;
    gap:6px !important;
  }
  .glass-chip{
    min-height:32px !important;
    padding:0 10px !important;
    font-size:.72rem !important;
    border-radius:14px !important;
  }
  .phone-highlight{
    min-height:34px !important;
    color:#0f2d61 !important;
  }
  .phone-highlight span,
  .phone-highlight .sf-icon{
    color:#0f2d61 !important;
  }
}

/* 3) Hero: less heavy, more app-like */
@media (max-width:760px){
  .hero-card{
    margin-top:8px !important;
    border-radius:22px !important;
    overflow:hidden !important;
  }
  .hero-bg{
    height:158px !important;
    background-position:center 52% !important;
  }
  .hero-content{
    padding:12px 13px 10px !important;
  }
  .premium-label{
    margin-bottom:5px !important;
    font-size:.6rem !important;
    letter-spacing:.085em !important;
  }
  .hero-content h2{
    font-size:1.62rem !important;
    line-height:.93 !important;
    max-width:9.5ch !important;
    margin-bottom:6px !important;
  }
  .hero-content p{
    font-size:.8rem !important;
    line-height:1.32 !important;
    margin-bottom:0 !important;
    max-width:36ch !important;
  }
  .rating-badge{display:none !important;}
  .hero-features{
    grid-template-columns:repeat(3,1fr) !important;
    border-top:1px solid rgba(255,216,126,.16) !important;
  }
  .hero-features span{
    flex-direction:column !important;
    min-height:52px !important;
    padding:7px 4px !important;
    text-align:center !important;
    justify-content:center !important;
    gap:5px !important;
    font-size:.67rem !important;
    line-height:1.12 !important;
    opacity:.94 !important;
  }
  .hero-features svg{
    width:14px !important;
    height:14px !important;
  }
  .primary-cta-row{
    gap:9px !important;
    margin-top:10px !important;
  }
  .big-cta{
    min-height:58px !important;
    border-radius:18px !important;
    font-size:.96rem !important;
  }
}

/* 4) Quote calculator clarity */
@media (max-width:760px){
  .estimate-card{
    margin-top:12px !important;
    border-radius:24px !important;
    padding:15px !important;
  }
  .section-head h2,
  .payments-card h2,
  .suggestion-strip h2{
    font-size:1.48rem !important;
    line-height:1.02 !important;
  }
  .section-head p,
  .payments-card p,
  .suggestion-strip p{
    font-size:.86rem !important;
    line-height:1.35 !important;
  }
  .field{
    margin-bottom:10px !important;
  }
  .field select,
  .field input{
    min-height:48px !important;
    border-radius:16px !important;
  }
}

/* 5) Experiences iPhone polish */
@media (max-width:760px){
  .ipad-shell{
    padding:8px 8px 128px !important;
  }
  .app-toolbar{
    padding:12px !important;
    border-radius:22px !important;
  }
  .brand-inline img{
    width:40px !important;
    height:40px !important;
  }
  .brand-inline h2{
    font-size:1.15rem !important;
  }
  .toolbar-meta{
    gap:7px !important;
  }
  .title-block{
    padding:15px !important;
    border-radius:22px !important;
  }
  .title-block h1{
    font-size:1.95rem !important;
  }
  .exp-grid{
    gap:12px !important;
    padding-bottom:130px !important;
  }
  .exp-card{
    border-radius:24px !important;
  }
  .exp-card .copy{
    padding:16px !important;
  }
  .exp-card .copy h2{
    font-size:1.55rem !important;
    line-height:1.05 !important;
  }
  .exp-card .copy p{
    font-size:.9rem !important;
    line-height:1.38 !important;
  }
  .exp-card .copy .btn,
  .exp-card .copy .btn.secondary{
    min-height:48px !important;
    width:max-content !important;
    max-width:100% !important;
    padding:0 16px !important;
    border-radius:16px !important;
  }
  .exp-card:not(.map-card):not(.luquillo-card):not(.ancestral-card) .media img{
    height:210px !important;
    object-fit:cover !important;
  }
  .exp-card.luquillo-card .media,
  .exp-card.ancestral-card .media{
    background:#fff !important;
  }
  .exp-card.luquillo-card .media img,
  .exp-card.ancestral-card .media img{
    height:auto !important;
    max-height:none !important;
    object-fit:contain !important;
    display:block !important;
  }
  .experience-tags{
    gap:6px !important;
    margin:9px 0 12px !important;
  }
  .experience-tags span{
    min-height:28px !important;
    font-size:.7rem !important;
  }
}

/* 6) Payment/contact polish */
@media (max-width:760px){
  .payments-card{
    border-radius:24px !important;
    padding:16px !important;
  }
  .payments{
    gap:8px !important;
  }
  .pay-chip{
    min-height:42px !important;
    padding:0 12px !important;
    border-radius:14px !important;
  }
  .deposit-note{
    margin-top:12px !important;
    border-radius:18px !important;
    padding:13px !important;
    font-size:.86rem !important;
    line-height:1.38 !important;
  }
  .contact-actions{
    grid-template-columns:1fr !important;
    gap:8px !important;
    margin-top:10px !important;
  }
  .contact-actions .mini-action{
    min-height:52px !important;
    border-radius:17px !important;
    padding:0 13px !important;
    width:auto !important;
  }
  .contact-actions .mini-action .ios-app-icon{
    width:30px !important;
    height:30px !important;
    min-width:30px !important;
  }
}

/* 7) Dock final iPhone safe spacing */
@media (max-width:760px){
  .premium-dock,
  .secondary-premium-dock{
    width:calc(100vw - 16px) !important;
    min-height:74px !important;
    bottom:calc(env(safe-area-inset-bottom,0px) + 8px) !important;
    padding:7px !important;
    border-radius:24px !important;
  }
  .premium-dock a,
  .secondary-premium-dock a{
    min-height:56px !important;
    border-radius:20px !important;
    font-size:.66rem !important;
    gap:4px !important;
  }
  .premium-dock a .sf-icon,
  .secondary-premium-dock a .sf-icon{
    width:18px !important;
    height:18px !important;
  }
  .premium-dock a.save,
  .secondary-premium-dock a.save{
    font-size:.62rem !important;
  }
  .save-contact-dock .contact-app-dock-icon,
  .save .dock-contact-app,
  .bottom-dock .dock-contact-app,
  .premium-dock .dock-contact-app,
  .secondary-premium-dock .dock-contact-app{
    width:28px !important;
    height:28px !important;
    min-width:28px !important;
    border-radius:10px !important;
  }
}

/* 8) NFC iPhone polish */
@media (max-width:760px){
  .nfc-shell .ipad-screen{
    border-radius:24px !important;
  }
  .nfc-card{
    padding:16px !important;
    border-radius:24px !important;
  }
  .nfc-title{
    font-size:2rem !important;
    line-height:1 !important;
  }
  .nfc-actions{
    gap:8px !important;
  }
  .nfc-actions .btn{
    min-height:52px !important;
    border-radius:17px !important;
    justify-content:flex-start !important;
    padding:0 14px !important;
  }
}


/* =========================================================
   FINAL USER-SUPPLIED ICONS — SITEWIDE IPHONE VERSION
   Applies to Home, Experiences, Quote, Payment/Contact, NFC and Dock.
   ========================================================= */

.wa-icon,
.ios-app-icon.phone-app,
.ios-app-icon.email-app,
.ios-app-icon.facebook-app{
  position:relative !important;
  display:inline-block !important;
  flex:0 0 auto !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:cover !important;
  overflow:hidden !important;
  box-shadow:none !important;
  border:0 !important;
}

.wa-icon::before,
.wa-icon::after,
.ios-app-icon.phone-app::before,
.ios-app-icon.phone-app::after,
.ios-app-icon.email-app::before,
.ios-app-icon.email-app::after,
.ios-app-icon.facebook-app::before,
.ios-app-icon.facebook-app::after{
  content:none !important;
  display:none !important;
}

.wa-icon > *,
.ios-app-icon.phone-app > *,
.ios-app-icon.email-app > *,
.ios-app-icon.facebook-app > *{
  opacity:0 !important;
  visibility:hidden !important;
}

/* WhatsApp */
.wa-icon{
  width:26px !important;
  height:26px !important;
  min-width:26px !important;
  border-radius:8px !important;
  background-image:url("assets/icons/whatsapp-app-ref.png") !important;
}

/* Call / Phone */
.ios-app-icon.phone-app{
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  border-radius:9px !important;
  background-image:url("assets/icons/phone-app-ref.png") !important;
}

/* Email / Mail */
.ios-app-icon.email-app{
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  border-radius:9px !important;
  background-image:url("assets/icons/email-app-ref.png") !important;
}

/* Facebook */
.ios-app-icon.facebook-app{
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  border-radius:9px !important;
  background-image:url("assets/icons/facebook-app-ref.png") !important;
}

/* Larger action buttons */
.big-cta .wa-icon,
.btn.whatsapp .wa-icon,
.contact-actions .mini-action .wa-icon,
.nfc-actions .btn .wa-icon{
  width:30px !important;
  height:30px !important;
  min-width:30px !important;
  border-radius:10px !important;
}

.contact-actions .mini-action .ios-app-icon.phone-app,
.contact-actions .mini-action .ios-app-icon.email-app,
.contact-actions .mini-action .ios-app-icon.facebook-app,
.nfc-actions .btn .ios-app-icon.phone-app,
.nfc-actions .btn .ios-app-icon.email-app,
.nfc-actions .btn .ios-app-icon.facebook-app{
  width:30px !important;
  height:30px !important;
  min-width:30px !important;
  border-radius:10px !important;
}

/* Keep buttons aligned after icon replacement */
.big-cta,
.btn,
.social-btn,
.mini-action,
.nfc-actions .btn,
.contact-actions .mini-action,
.exp-card .copy .btn{
  align-items:center !important;
  gap:10px !important;
}


/* ===== Simplified language switch ===== */
.language-toggle-simple{
  min-height:34px;
  min-width:74px;
  padding:0 10px;
  border:1px solid rgba(255,216,126,.28);
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  background:rgba(255,255,255,.08);
  color:#dbe7ff;
  font-weight:900;
  font-size:.82rem;
  letter-spacing:.02em;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10), 0 10px 24px rgba(0,0,0,.16);
  backdrop-filter:blur(18px) saturate(1.15);
  -webkit-backdrop-filter:blur(18px) saturate(1.15);
  cursor:pointer;
}
.language-toggle-simple .lang-current{
  min-width:28px;
  height:24px;
  padding:0 8px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(180deg,#ffe595,#d3a23f);
  color:#06172b;
  box-shadow:0 8px 16px rgba(217,173,73,.24), inset 0 1px 0 rgba(255,255,255,.42);
}
.language-toggle-simple .lang-divider{
  color:rgba(255,255,255,.45);
  font-weight:800;
}
.language-toggle-simple .lang-next{
  color:rgba(255,255,255,.68);
  min-width:22px;
}
.language-pills{
  display:none !important;
}
.brand-controls .language-toggle-simple,
.toolbar-meta .language-toggle-simple{
  flex:0 0 auto;
}
@media (max-width:760px){
  .language-toggle-simple{
    min-height:30px;
    min-width:66px;
    padding:0 7px;
    gap:4px;
    font-size:.74rem;
  }
  .language-toggle-simple .lang-current{
    min-width:24px;
    height:22px;
    padding:0 7px;
  }
  .language-toggle-simple .lang-next{
    min-width:20px;
  }
}
@media (max-width:430px){
  .language-toggle-simple{
    min-height:28px;
    min-width:62px;
    font-size:.72rem;
  }
}


/* ===== Simplified single-language toggle ===== */
.language-toggle-simple{
  min-height:34px;
  min-width:52px;
  padding:0 10px;
  border:1px solid rgba(255,216,126,.30);
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(180deg,#ffe595,#d3a23f);
  color:#06172b;
  font-weight:900;
  font-size:.82rem;
  letter-spacing:.03em;
  box-shadow:0 10px 24px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.42);
  backdrop-filter:blur(18px) saturate(1.15);
  -webkit-backdrop-filter:blur(18px) saturate(1.15);
  cursor:pointer;
}
.language-toggle-simple .lang-target{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:22px;
}
.language-toggle-simple .lang-current,
.language-toggle-simple .lang-divider,
.language-toggle-simple .lang-next{ display:none !important; }
@media (max-width:760px){
  .language-toggle-simple{
    min-height:30px;
    min-width:46px;
    padding:0 9px;
    font-size:.74rem;
  }
}
@media (max-width:430px){
  .language-toggle-simple{
    min-height:28px;
    min-width:42px;
    padding:0 8px;
    font-size:.72rem;
  }
}


/* Verified cleanup: enforce one-language capsule after all previous layers */
.language-toggle-simple{
  min-width:42px !important;
}
.language-toggle-simple .lang-target{
  display:inline-flex !important;
}
.language-toggle-simple .lang-current,
.language-toggle-simple .lang-divider,
.language-toggle-simple .lang-next{
  display:none !important;
}


/* --- Dock transparency polish (requested) --- */
.premium-dock,
.secondary-premium-dock{
  background:linear-gradient(180deg,rgba(17,45,82,.56),rgba(5,16,31,.44)) !important;
  border:1px solid rgba(255,216,126,.18) !important;
  box-shadow:0 18px 48px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.10) !important;
  backdrop-filter:blur(24px) saturate(1.10) !important;
  -webkit-backdrop-filter:blur(24px) saturate(1.10) !important;
}


/* Round Trips card update */
.photo-service.road{
  --service-img:url("assets/round-trips-real.jpg") !important;
}
.photo-service.road::before{
  background:
    linear-gradient(180deg,rgba(0,0,0,.02),rgba(2,8,16,.36)),
    var(--service-img) center/cover no-repeat !important;
  opacity:1 !important;
}
.photo-service.road h3,
.photo-service.road p{
  text-shadow:0 6px 18px rgba(0,0,0,.46);
}
.photo-service.road p{
  max-width:19ch;
}
@media (max-width:760px){
  .photo-service.road{
    min-height:250px !important;
  }
  .photo-service.road::before{
    background:
      linear-gradient(180deg,rgba(0,0,0,.04),rgba(2,8,16,.42)),
      var(--service-img) center/cover no-repeat !important;
  }
}


/* Day Trips card image update — using provided image directly */
.photo-service.waterfall{
  --service-img:url("assets/day-trips-nature.jpeg") !important;
}
.photo-service.waterfall::before{
  background:
    linear-gradient(180deg,rgba(0,0,0,.04),rgba(2,8,16,.72)),
    var(--service-img) center/cover no-repeat !important;
  opacity:1 !important;
}
.photo-service.waterfall p{
  max-width:22ch;
}
@media (max-width:760px){
  .photo-service.waterfall{
    min-height:250px !important;
  }
  .photo-service.waterfall::before{
    background:
      linear-gradient(180deg,rgba(0,0,0,.04),rgba(2,8,16,.68)),
      var(--service-img) center/cover no-repeat !important;
  }
}


/* Verified Round Trips image — exact user-provided real photo */
.photo-service.road{
  --service-img:url("assets/round-trips-real.jpg") !important;
}
.photo-service.road::before{
  background:
    linear-gradient(180deg,rgba(0,0,0,.03),rgba(2,8,16,.62)),
    var(--service-img) center/cover no-repeat !important;
  opacity:1 !important;
}
.photo-service.road p{
  max-width:22ch;
}
@media (max-width:760px){
  .photo-service.road{
    min-height:250px !important;
  }
  .photo-service.road::before{
    background:
      linear-gradient(180deg,rgba(0,0,0,.03),rgba(2,8,16,.58)),
      var(--service-img) center/cover no-repeat !important;
  }
}


/* Translation toggle stability guard */
#langToggle,
#langToggle *{
  user-select:none;
}
#langToggle .lang-target{
  display:inline-flex !important;
}
#langToggle .lang-current,
#langToggle .lang-divider,
#langToggle .lang-next{
  display:none !important;
}


/* ===== Simplified NFC page ===== */
.nfc-simple-page{
  padding-bottom:24px !important;
}
.nfc-simple-screen{
  min-height:auto !important;
}
.nfc-simple-stage{
  gap:12px !important;
  padding-bottom:24px !important;
}
.nfc-simple-toolbar{
  border-radius:24px !important;
  padding:14px !important;
  align-items:flex-start !important;
}
.nfc-simple-top-actions{
  gap:8px !important;
  align-items:center !important;
}
.nfc-simple-card{
  padding:18px !important;
  border-radius:28px !important;
}
.nfc-profile{
  display:grid;
  grid-template-columns:82px 1fr;
  gap:14px;
  align-items:start;
}
.nfc-profile-logo{
  width:82px;
  height:82px;
  border-radius:24px;
  object-fit:contain;
  padding:8px;
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.04));
  border:1px solid rgba(255,216,126,.24);
}
.nfc-simple-card .nfc-title{
  margin:8px 0 6px !important;
  font-size:2.45rem !important;
  line-height:.95 !important;
}
.nfc-simple-card .nfc-script{
  margin:0 0 8px !important;
  color:var(--gold2) !important;
  font-weight:900 !important;
}
.nfc-simple-card .section-copy{
  margin:0 !important;
  font-size:1rem !important;
  line-height:1.35 !important;
}
.nfc-service-line{
  margin:14px 0 14px;
  padding:10px 12px;
  border-radius:16px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
  font-weight:800;
  line-height:1.25;
}
.nfc-primary-actions{
  display:grid;
  gap:10px;
}
.nfc-primary-actions .btn{
  min-height:58px !important;
  border-radius:18px !important;
  justify-content:flex-start !important;
  padding:0 16px !important;
}
.nfc-primary-actions .btn.primary{
  background:linear-gradient(180deg,#ffe595,#d3a23f) !important;
  color:#06172b !important;
}
.nfc-primary-actions .btn.whatsapp{
  background:linear-gradient(180deg,#35dd69,#0fb84e) !important;
  color:#fff !important;
}
.nfc-quick-actions{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin-top:10px;
}
.nfc-quick-actions .btn{
  min-height:50px !important;
  border-radius:16px !important;
  padding:0 10px !important;
  justify-content:center !important;
  font-size:.78rem !important;
}
.nfc-quick-actions .btn span:last-child{
  white-space:nowrap;
}
.nfc-help{
  margin:14px 0 0;
  color:#eef5ff;
  font-weight:800;
  line-height:1.35;
}
.nfc-contact-line{
  margin:10px 0 0;
  color:rgba(255,255,255,.72);
  font-weight:700;
  line-height:1.35;
}
.nfc-redirect{
  margin-top:12px !important;
  font-size:.9rem !important;
  line-height:1.35 !important;
}
.nfc-shell .bottom-dock,
.nfc-shell + .secondary-premium-dock,
body:has(.nfc-simple-page) .secondary-premium-dock{
  display:none !important;
}
@media (max-width:760px){
  .nfc-simple-page{
    padding:8px 8px 20px !important;
  }
  .nfc-simple-toolbar{
    padding:12px !important;
    gap:10px !important;
  }
  .nfc-simple-toolbar .brand-inline img{
    width:42px !important;
    height:42px !important;
  }
  .nfc-simple-toolbar .brand-inline h2{
    font-size:1.25rem !important;
  }
  .nfc-simple-toolbar .brand-inline p{
    font-size:.78rem !important;
  }
  .nfc-simple-top-actions .chip{
    min-height:34px !important;
    padding:0 12px !important;
    font-size:.78rem !important;
  }
  .nfc-simple-card{
    padding:16px !important;
  }
  .nfc-profile{
    grid-template-columns:72px 1fr;
    gap:12px;
  }
  .nfc-profile-logo{
    width:72px;
    height:72px;
    border-radius:22px;
  }
  .nfc-simple-card .nfc-title{
    font-size:2rem !important;
  }
  .nfc-simple-card .section-copy{
    font-size:.92rem !important;
  }
  .nfc-service-line{
    font-size:.86rem;
  }
  .nfc-quick-actions{
    grid-template-columns:1fr;
  }
  .nfc-quick-actions .btn{
    justify-content:flex-start !important;
    font-size:.9rem !important;
    min-height:48px !important;
    padding:0 14px !important;
  }
}
@media (max-width:390px){
  .nfc-profile{
    grid-template-columns:1fr;
  }
  .nfc-profile-logo{
    width:70px;
    height:70px;
  }
}


/* ===== NFC ultra-simple final cleanup ===== */
.nfc-ultra-simple{
  padding-bottom:18px !important;
}
.nfc-ultra-simple .nfc-simple-stage{
  max-width:560px !important;
  margin:0 auto !important;
  min-height:auto !important;
  gap:10px !important;
  padding-bottom:16px !important;
}
.nfc-ultra-simple .nfc-simple-toolbar{
  border-radius:24px !important;
  padding:12px !important;
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
}
.nfc-ultra-simple .brand-inline{
  min-width:0 !important;
}
.nfc-ultra-simple .brand-inline img{
  width:44px !important;
  height:44px !important;
}
.nfc-ultra-simple .brand-inline h2{
  font-size:1.32rem !important;
  line-height:1 !important;
  margin:0 !important;
}
.nfc-ultra-simple .brand-inline p{
  font-size:.78rem !important;
  margin-top:3px !important;
}
.nfc-ultra-simple .nfc-simple-card{
  padding:16px !important;
  border-radius:26px !important;
}
.nfc-profile-compact{
  grid-template-columns:76px 1fr !important;
  align-items:center !important;
}
.nfc-ultra-simple .nfc-profile-logo{
  width:76px !important;
  height:76px !important;
  border-radius:22px !important;
  padding:8px !important;
}
.nfc-ultra-simple .eyebrow{
  font-size:.72rem !important;
  margin-bottom:4px !important;
}
.nfc-ultra-simple .nfc-title{
  font-size:2rem !important;
  line-height:.95 !important;
  margin:0 0 6px !important;
}
.nfc-ultra-simple .nfc-script{
  font-size:1rem !important;
  line-height:1.15 !important;
  margin:0 !important;
}
.nfc-ultra-simple .nfc-service-line{
  margin:14px 0 12px !important;
  padding:9px 11px !important;
  font-size:.86rem !important;
  text-align:center !important;
}
.nfc-ultra-simple .nfc-primary-actions{
  gap:9px !important;
}
.nfc-ultra-simple .nfc-primary-actions .btn{
  min-height:56px !important;
  border-radius:18px !important;
}
.nfc-ultra-simple .nfc-quick-actions{
  margin-top:9px !important;
  gap:8px !important;
}
.nfc-ultra-simple .nfc-help{
  margin:12px 0 0 !important;
  color:rgba(255,255,255,.78) !important;
  font-size:.88rem !important;
  font-weight:700 !important;
  text-align:center !important;
}
.nfc-ultra-simple .nfc-contact-line,
.nfc-ultra-simple .footer-inline,
.nfc-ultra-simple .nfc-mini-grid,
.nfc-shell .bottom-dock,
body:has(.nfc-ultra-simple) .secondary-premium-dock{
  display:none !important;
}
@media (max-width:760px){
  .nfc-ultra-simple{
    padding:8px !important;
  }
  .nfc-profile-compact{
    grid-template-columns:68px 1fr !important;
    gap:12px !important;
  }
  .nfc-ultra-simple .nfc-profile-logo{
    width:68px !important;
    height:68px !important;
  }
  .nfc-ultra-simple .nfc-title{
    font-size:1.78rem !important;
  }
  .nfc-ultra-simple .nfc-quick-actions{
    grid-template-columns:repeat(3,1fr) !important;
  }
  .nfc-ultra-simple .nfc-quick-actions .btn{
    min-height:46px !important;
    justify-content:center !important;
    padding:0 8px !important;
    font-size:.76rem !important;
  }
  .nfc-ultra-simple .nfc-quick-actions .ios-app-icon{
    width:24px !important;
    height:24px !important;
    min-width:24px !important;
  }
}
@media (max-width:390px){
  .nfc-profile-compact{
    grid-template-columns:60px 1fr !important;
  }
  .nfc-ultra-simple .nfc-profile-logo{
    width:60px !important;
    height:60px !important;
  }
  .nfc-ultra-simple .nfc-title{
    font-size:1.55rem !important;
  }
  .nfc-ultra-simple .nfc-quick-actions{
    grid-template-columns:1fr !important;
  }
  .nfc-ultra-simple .nfc-quick-actions .btn{
    justify-content:flex-start !important;
    font-size:.88rem !important;
  }
}


/* ===== NFC final compact lower section ===== */
.nfc-ultra-simple .nfc-quick-actions{
  display:grid !important;
  grid-template-columns:repeat(3,1fr) !important;
  gap:8px !important;
  margin-top:9px !important;
}
.nfc-ultra-simple .nfc-quick-actions .btn{
  min-height:46px !important;
  border-radius:16px !important;
  padding:0 8px !important;
  justify-content:center !important;
  gap:7px !important;
  font-size:.76rem !important;
}
.nfc-ultra-simple .nfc-quick-actions .ios-app-icon{
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  border-radius:8px !important;
}
.nfc-ultra-simple .nfc-help{
  margin:12px 8px 0 !important;
  color:rgba(255,255,255,.74) !important;
  font-size:.82rem !important;
  line-height:1.28 !important;
  font-weight:700 !important;
  text-align:center !important;
}

/* Redirect notice should only appear after tapping Save Contact */
.nfc-ultra-simple .nfc-redirect,
.nfc-card .redirect{
  display:none !important;
  opacity:0 !important;
  transform:translateY(6px) !important;
  pointer-events:none !important;
}
.nfc-ultra-simple .nfc-redirect.show,
.nfc-card .redirect.show{
  display:block !important;
  opacity:1 !important;
  transform:translateY(0) !important;
  pointer-events:auto !important;
  margin:10px 0 0 !important;
  padding:10px 12px !important;
  border-radius:16px !important;
  font-size:.78rem !important;
  line-height:1.25 !important;
}
.nfc-ultra-simple .nfc-redirect .progress{
  height:4px !important;
  margin-top:8px !important;
}

/* Keep Safari bottom bar from covering the page content */
.nfc-ultra-simple .nfc-simple-card{
  margin-bottom:18px !important;
}
.nfc-ultra-simple .nfc-simple-stage{
  padding-bottom:28px !important;
}

@media (max-width:390px){
  .nfc-ultra-simple .nfc-quick-actions{
    grid-template-columns:repeat(3,1fr) !important;
  }
  .nfc-ultra-simple .nfc-quick-actions .btn{
    min-height:44px !important;
    font-size:.7rem !important;
    padding:0 6px !important;
  }
  .nfc-ultra-simple .nfc-quick-actions .ios-app-icon{
    width:22px !important;
    height:22px !important;
    min-width:22px !important;
  }
}


/* NFC final: hide helper text for a cleaner card */
.nfc-ultra-simple .nfc-help{
  display:none !important;
}
.nfc-ultra-simple .nfc-simple-card{
  padding-bottom:18px !important;
}


.nfc-phone-line{
  margin:-2px 0 14px;
  min-height:48px;
  padding:10px 14px;
  border-radius:16px;
  display:flex;
  align-items:center;
  gap:12px;
  background:linear-gradient(180deg,rgba(16,34,60,.72),rgba(8,22,42,.84));
  border:1px solid rgba(255,215,119,.26);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.nfc-phone-line .ios-app-icon{
  width:34px;
  height:34px;
  flex:0 0 34px;
}
.nfc-phone-number{
  font-weight:900;
  letter-spacing:.01em;
  color:var(--ink);
  font-size:1.03rem;
}
@media (max-width:760px){
  .nfc-phone-line{
    min-height:46px;
    padding:9px 12px;
    gap:10px;
  }
  .nfc-phone-number{
    font-size:.98rem;
  }
}


/* Quote result stays hidden until the first Get Free Quote tap */
.estimate-panel.quote-locked{
  display:none !important;
}


/* Final calculator fix: fully hide result before first quote request */
.estimate-panel.quote-locked{
  display:none !important;
  visibility:hidden !important;
  height:0 !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  overflow:hidden !important;
}
.estimate-panel:not(.quote-locked){
  visibility:visible !important;
}


/* Final quote modal polish: compact, confidence-focused */
.quote-modal .modal-shell{
  max-width:620px !important;
}
.quote-modal .modal-head{
  padding:22px 24px 18px !important;
}
.quote-modal .modal-head h3{
  font-size:clamp(2rem,7vw,3rem) !important;
  line-height:1.02 !important;
}
.quote-modal .modal-body{
  padding:22px 24px 24px !important;
}
.quote-modal .modal-intro{
  margin:0 0 10px !important;
  font-size:1.08rem !important;
  line-height:1.35 !important;
}
.quote-confidence{
  margin:0 0 14px;
  padding:12px 14px;
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,216,126,.16),rgba(255,216,126,.07));
  border:1px solid rgba(255,216,126,.26);
  color:#fff;
}
.quote-confidence strong{
  display:block;
  color:var(--gold2);
  font-size:1rem;
  line-height:1.2;
  margin-bottom:3px;
}
.quote-confidence span{
  display:block;
  color:rgba(255,255,255,.78);
  font-weight:700;
  font-size:.88rem;
  line-height:1.25;
}
.modal-summary{
  padding:14px !important;
  border-radius:20px !important;
}
.modal-summary .summary-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
}
.modal-summary .summary-grid span{
  display:block;
  padding:9px 10px;
  border-radius:13px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.10);
  color:#fff;
  font-weight:800;
  line-height:1.18;
}
.modal-summary .summary-grid b{
  display:block;
  color:var(--gold2);
  font-size:.68rem;
  letter-spacing:.05em;
  text-transform:uppercase;
  margin-bottom:3px;
}
.modal-summary .summary-wide{
  grid-column:1/-1;
}
.modal-summary small{
  display:block;
  margin-top:10px;
  color:rgba(255,255,255,.72);
  font-weight:700;
  line-height:1.28;
}
.quote-modal .modal-actions{
  gap:10px !important;
  margin-top:18px !important;
}
.quote-modal #quoteWhatsApp{
  min-height:58px !important;
}
.quote-modal #quoteEmail{
  min-height:50px !important;
  opacity:.92;
}
@media (max-width:760px){
  .quote-modal .modal-shell{
    width:calc(100vw - 32px) !important;
    max-height:calc(100dvh - 90px) !important;
    overflow:auto !important;
  }
  .quote-modal .modal-head{
    padding:20px 20px 14px !important;
  }
  .quote-modal .modal-head h3{
    font-size:2.1rem !important;
  }
  .quote-modal .modal-body{
    padding:18px 20px 20px !important;
  }
  .quote-modal .modal-intro{
    font-size:.98rem !important;
  }
  .modal-summary .summary-grid{
    gap:7px;
  }
  .modal-summary .summary-grid span{
    padding:8px 9px;
    font-size:.86rem;
  }
}
@media (max-width:390px){
  .modal-summary .summary-grid{
    grid-template-columns:1fr;
  }
}


/* Quote reset behavior: each route/passenger change hides prior estimate again */
.estimate-card .calculator-shell::after{
  content:"Choose your route, then tap Get Free Quote to see and send the estimate.";
  display:block;
  margin-top:10px;
  color:rgba(255,255,255,.62);
  font-size:.78rem;
  font-weight:700;
  line-height:1.25;
}
.estimate-card:has(.estimate-panel:not(.quote-locked)) .calculator-shell::after{
  content:"";
  display:none;
}


/* iPhone compact quote modal */
.quote-modal .modal-shell{
  max-width:560px !important;
  width:min(560px,calc(100vw - 28px)) !important;
  max-height:calc(100dvh - 58px) !important;
  overflow:auto !important;
}
.quote-modal .modal-head{
  padding:18px 20px 14px !important;
}
.quote-modal .modal-head h3{
  font-size:clamp(1.75rem,6.2vw,2.35rem) !important;
  line-height:1.02 !important;
  letter-spacing:-.045em !important;
}
.quote-modal .modal-close{
  width:54px !important;
  height:54px !important;
  min-width:54px !important;
}
.quote-modal .modal-body{
  padding:16px 20px 18px !important;
}
.quote-modal .modal-intro{
  margin:0 0 9px !important;
  font-size:.98rem !important;
  line-height:1.25 !important;
}
.quote-modal .quote-confidence{
  margin:0 0 11px !important;
  padding:10px 12px !important;
  border-radius:16px !important;
}
.quote-modal .quote-confidence strong{
  font-size:.95rem !important;
}
.quote-modal .quote-confidence span{
  font-size:.78rem !important;
}
.quote-modal .modal-summary{
  padding:11px 12px !important;
  border-radius:17px !important;
}
.quote-modal .summary-grid{
  display:none !important;
}
.quote-modal .summary-compact{
  display:grid !important;
  gap:5px !important;
}
.quote-modal .summary-compact p{
  margin:0 !important;
  display:flex !important;
  justify-content:space-between !important;
  gap:12px !important;
  padding:6px 0 !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
  color:#fff !important;
  font-weight:800 !important;
  line-height:1.18 !important;
  font-size:.92rem !important;
}
.quote-modal .summary-compact p:last-child{
  border-bottom:0 !important;
}
.quote-modal .summary-compact b{
  color:var(--gold2) !important;
  flex:0 0 auto !important;
}
.quote-modal .summary-compact .estimate-line{
  font-size:.98rem !important;
}
.quote-modal .modal-summary small{
  margin-top:8px !important;
  font-size:.72rem !important;
  line-height:1.22 !important;
}
.quote-modal .modal-actions{
  margin-top:12px !important;
  gap:9px !important;
}
.quote-modal #quoteWhatsApp{
  min-height:54px !important;
  border-radius:18px !important;
}
.quote-modal #quoteEmail{
  min-height:48px !important;
  border-radius:16px !important;
  width:max-content !important;
  max-width:100% !important;
  padding-inline:18px !important;
}
@media (max-width:430px){
  .quote-modal .modal-shell{
    width:calc(100vw - 24px) !important;
    max-height:calc(100dvh - 52px) !important;
  }
  .quote-modal .modal-head{
    padding:16px 18px 12px !important;
  }
  .quote-modal .modal-head h3{
    font-size:2rem !important;
  }
  .quote-modal .modal-body{
    padding:14px 18px 16px !important;
  }
  .quote-modal .summary-compact p{
    font-size:.84rem !important;
  }
  .quote-modal .summary-compact .estimate-line{
    font-size:.9rem !important;
  }
}


/* ===== iPhone dock + bottom spacing polish ===== */
@media (max-width:760px){
  .app-shell,
  .experiences-shell{
    padding-bottom:210px !important;
  }

  .estimate-card,
  .photo-service,
  .suggestion-strip,
  .trust-strip,
  .payments-contact,
  .experience-card,
  .experience-feature,
  .experience-hero,
  .map-feature{
    margin-bottom:22px !important;
  }

  .estimate-card{
    padding-bottom:36px !important;
  }

  .calculator-shell{
    padding-bottom:18px !important;
  }

  .photo-service{
    padding-bottom:34px !important;
  }

  .experience-card{
    padding-bottom:34px !important;
  }

  .experience-card .btn,
  .experience-feature .btn,
  .map-feature .btn{
    margin-bottom:10px !important;
  }

  .premium-dock,
  .secondary-premium-dock{
    width:calc(100vw - 34px) !important;
    max-width:560px !important;
    min-height:70px !important;
    padding:8px 10px !important;
    bottom:calc(env(safe-area-inset-bottom) + 76px) !important;
    border-radius:25px !important;
    background:linear-gradient(180deg,rgba(17,45,82,.46),rgba(5,16,31,.34)) !important;
    border:1px solid rgba(255,216,126,.16) !important;
    box-shadow:0 16px 42px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.09) !important;
    backdrop-filter:blur(28px) saturate(1.12) !important;
    -webkit-backdrop-filter:blur(28px) saturate(1.12) !important;
  }

  .premium-dock a,
  .secondary-premium-dock a{
    min-height:52px !important;
    padding:6px 6px !important;
    gap:4px !important;
    border-radius:20px !important;
    font-size:.64rem !important;
  }

  .premium-dock a svg,
  .secondary-premium-dock a svg{
    width:1.18em !important;
    height:1.18em !important;
  }

  .premium-dock a span,
  .secondary-premium-dock a span{
    line-height:1.05 !important;
  }

  .premium-dock a.save-contact,
  .secondary-premium-dock a.save-contact,
  .premium-dock a:last-child,
  .secondary-premium-dock a:last-child{
    min-width:82px !important;
    padding-inline:8px !important;
  }

  .premium-dock a:last-child .ios-app-icon,
  .secondary-premium-dock a:last-child .ios-app-icon,
  .premium-dock a.save-contact .ios-app-icon,
  .secondary-premium-dock a.save-contact .ios-app-icon{
    width:30px !important;
    height:30px !important;
    min-width:30px !important;
    border-radius:9px !important;
  }
}

@media (max-width:430px){
  .app-shell,
  .experiences-shell{
    padding-bottom:220px !important;
  }

  .premium-dock,
  .secondary-premium-dock{
    width:calc(100vw - 28px) !important;
    min-height:66px !important;
    padding:7px 8px !important;
    bottom:calc(env(safe-area-inset-bottom) + 72px) !important;
    border-radius:24px !important;
  }

  .premium-dock a,
  .secondary-premium-dock a{
    min-height:50px !important;
    font-size:.58rem !important;
    border-radius:18px !important;
  }

  .premium-dock a:last-child,
  .secondary-premium-dock a:last-child{
    min-width:78px !important;
  }
}

/* Make anchored sections safer behind fixed dock */
#quoteCard,
#contact,
#services,
#experiences{
  scroll-margin-bottom:210px;
}


/* ===== Final iPhone dock position fix ===== */
/* Keep the dock closer to the bottom while Safari's bottom bar is visible */
@media (max-width:760px){
  .premium-dock,
  .secondary-premium-dock{
    bottom:calc(env(safe-area-inset-bottom) + 18px) !important;
  }

  .app-shell,
  .experiences-shell{
    padding-bottom:190px !important;
  }
}

@media (max-width:430px){
  .premium-dock,
  .secondary-premium-dock{
    bottom:calc(env(safe-area-inset-bottom) + 16px) !important;
  }

  .app-shell,
  .experiences-shell{
    padding-bottom:190px !important;
  }
}


/* ===== Compact El Yunque modal for iPhone ===== */
.yunque-modal-compact .modal-shell{
  width:min(620px,calc(100vw - 28px)) !important;
  max-height:calc(100dvh - 64px) !important;
  overflow:auto !important;
}
.yunque-modal-compact .modal-head{
  padding:18px 20px 14px !important;
}
.yunque-modal-compact .modal-head h3{
  font-size:clamp(1.9rem,6.6vw,2.65rem) !important;
  line-height:1.02 !important;
}
.yunque-modal-compact .modal-close{
  width:54px !important;
  height:54px !important;
  min-width:54px !important;
}
.yunque-modal-compact .modal-body{
  padding:18px 20px 20px !important;
}
.yunque-modal-compact .yunque-pill{
  min-height:48px !important;
  padding:10px 14px !important;
  border-radius:18px !important;
  font-size:1rem !important;
  margin-bottom:14px !important;
}
.yunque-modal-compact .yunque-short-copy{
  margin:0 0 12px !important;
  font-size:1rem !important;
  line-height:1.25 !important;
}
.yunque-modal-compact .yunque-chip-list{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin-bottom:14px !important;
}
.yunque-modal-compact .yunque-chip-list .yunque-point{
  width:auto !important;
  min-height:0 !important;
  padding:9px 12px !important;
  border-radius:999px !important;
  font-size:.82rem !important;
  line-height:1.1 !important;
  font-weight:850 !important;
  background:rgba(255,255,255,.075) !important;
  border:1px solid rgba(255,216,126,.16) !important;
}
.yunque-modal-compact .yunque-disclaimer{
  margin:4px 0 14px !important;
  font-size:.84rem !important;
  line-height:1.3 !important;
  color:rgba(255,255,255,.72) !important;
}
.yunque-modal-compact .yunque-confirm{
  min-height:52px !important;
  border-radius:18px !important;
}
@media (max-width:430px){
  .yunque-modal-compact .modal-shell{
    width:calc(100vw - 24px) !important;
    max-height:calc(100dvh - 54px) !important;
  }
  .yunque-modal-compact .modal-head h3{
    font-size:2.05rem !important;
  }
  .yunque-modal-compact .modal-body{
    padding:16px 18px 18px !important;
  }
  .yunque-modal-compact .yunque-chip-list{
    gap:7px !important;
  }
  .yunque-modal-compact .yunque-chip-list .yunque-point{
    font-size:.78rem !important;
    padding:8px 10px !important;
  }
}


/* Yunque compact chips with icons */
.yunque-modal-compact .yunque-chip-list .yunque-point{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
}


/* ===== Experiences iPhone top + dock polish ===== */
.experiences-shell .app-toolbar{
  margin-bottom:10px !important;
}
.experiences-shell .title-block p{
  max-width:28ch !important;
}

@media (max-width:760px){
  .experiences-shell{
    padding:8px 8px 190px !important;
  }

  .experiences-shell .app-stage{
    gap:10px !important;
  }

  .experiences-shell .app-toolbar{
    padding:12px !important;
    border-radius:22px !important;
    gap:10px !important;
    margin-bottom:10px !important;
  }

  .experiences-shell .brand-inline{
    gap:10px !important;
  }

  .experiences-shell .brand-inline img{
    width:42px !important;
    height:42px !important;
  }

  .experiences-shell .brand-inline h2{
    font-size:1.24rem !important;
    line-height:.96 !important;
  }

  .experiences-shell .brand-inline p{
    font-size:.76rem !important;
    margin-top:3px !important;
  }

  .experiences-shell .toolbar-meta{
    display:grid !important;
    grid-template-columns:auto auto !important;
    gap:8px !important;
    justify-content:start !important;
    align-items:center !important;
  }

  .experiences-shell .toolbar-meta .chip{
    min-height:34px !important;
    padding:0 12px !important;
    border-radius:999px !important;
    font-size:.76rem !important;
  }

  .experiences-shell .toolbar-meta .chip-ok{
    grid-column:1 / -1 !important;
    width:max-content !important;
    min-height:38px !important;
    padding-inline:14px !important;
  }

  .experiences-shell .page-header{
    margin-bottom:10px !important;
  }

  .experiences-shell .title-block{
    padding:16px !important;
    border-radius:22px !important;
  }

  .experiences-shell .title-block h1{
    font-size:1.95rem !important;
    line-height:.98 !important;
    letter-spacing:-.05em !important;
  }

  .experiences-shell .title-block p{
    font-size:.95rem !important;
    line-height:1.3 !important;
    margin-top:8px !important;
    max-width:31ch !important;
  }

  .experiences-shell .exp-grid{
    gap:14px !important;
    padding-bottom:210px !important;
  }

  .experiences-shell .exp-card{
    margin-bottom:8px !important;
  }

  .experiences-shell .exp-card.map-card .copy{
    padding-top:16px !important;
  }

  .experiences-shell .exp-card .copy{
    padding-bottom:32px !important;
  }

  .experiences-shell .exp-card .copy h2{
    font-size:2rem !important;
    line-height:1 !important;
  }

  .experiences-shell .exp-card .copy p{
    font-size:.96rem !important;
    line-height:1.32 !important;
  }

  .experiences-shell .secondary-premium-dock{
    width:calc(100vw - 30px) !important;
    min-height:64px !important;
    padding:7px 8px !important;
    bottom:calc(env(safe-area-inset-bottom) + 14px) !important;
    border-radius:23px !important;
    background:linear-gradient(180deg,rgba(17,45,82,.34),rgba(5,16,31,.24)) !important;
    border:1px solid rgba(255,216,126,.13) !important;
    box-shadow:0 12px 34px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.08) !important;
    backdrop-filter:blur(24px) saturate(1.08) !important;
    -webkit-backdrop-filter:blur(24px) saturate(1.08) !important;
  }

  .experiences-shell .secondary-premium-dock a{
    min-height:48px !important;
    border-radius:18px !important;
    font-size:.58rem !important;
    gap:3px !important;
    padding:5px 5px !important;
  }

  .experiences-shell .secondary-premium-dock a.save{
    min-width:78px !important;
  }

  .experiences-shell .secondary-premium-dock a.save .ios-app-icon{
    width:29px !important;
    height:29px !important;
    min-width:29px !important;
  }
}

@media (max-width:390px){
  .experiences-shell .title-block h1{
    font-size:1.75rem !important;
  }

  .experiences-shell .secondary-premium-dock{
    bottom:calc(env(safe-area-inset-bottom) + 12px) !important;
    width:calc(100vw - 24px) !important;
  }
}


/* ===== Experiences final map + dock refinement ===== */
@media (max-width:760px){
  .experiences-shell .secondary-premium-dock{
    bottom:calc(env(safe-area-inset-bottom) + 6px) !important;
    width:calc(100vw - 34px) !important;
    min-height:60px !important;
    padding:6px 8px !important;
    border-radius:22px !important;
    background:linear-gradient(180deg,rgba(17,45,82,.25),rgba(5,16,31,.16)) !important;
    border:1px solid rgba(255,216,126,.10) !important;
    box-shadow:0 8px 26px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.07) !important;
    backdrop-filter:blur(22px) saturate(1.04) !important;
    -webkit-backdrop-filter:blur(22px) saturate(1.04) !important;
  }

  .experiences-shell .secondary-premium-dock a{
    min-height:44px !important;
    font-size:.54rem !important;
    border-radius:16px !important;
    opacity:.9 !important;
  }

  .experiences-shell .secondary-premium-dock a.active{
    background:rgba(217,173,73,.10) !important;
  }

  .experiences-shell .secondary-premium-dock a.save{
    min-width:74px !important;
    box-shadow:0 10px 22px rgba(217,173,73,.20) !important;
  }

  .experiences-shell .secondary-premium-dock a.save .ios-app-icon{
    width:27px !important;
    height:27px !important;
    min-width:27px !important;
  }

  .experiences-shell .exp-grid{
    padding-bottom:230px !important;
  }

  .experiences-shell .exp-card.map-card{
    margin-bottom:26px !important;
  }

  .experiences-shell .exp-card.map-card .media{
    max-height:360px !important;
    overflow:hidden !important;
  }

  .experiences-shell .exp-card.map-card .media img{
    max-height:360px !important;
    object-fit:contain !important;
    object-position:center top !important;
  }

  .experiences-shell .exp-card.map-card .copy{
    padding-top:22px !important;
    padding-bottom:38px !important;
  }

  .experiences-shell .exp-card.map-card .copy h2{
    font-size:1.86rem !important;
    line-height:.98 !important;
  }
}

@media (max-width:430px){
  .experiences-shell .secondary-premium-dock{
    bottom:calc(env(safe-area-inset-bottom) + 4px) !important;
    width:calc(100vw - 28px) !important;
    min-height:58px !important;
    padding:6px 7px !important;
  }

  .experiences-shell .secondary-premium-dock a{
    min-height:42px !important;
    font-size:.5rem !important;
  }

  .experiences-shell .exp-card.map-card .media{
    max-height:335px !important;
  }

  .experiences-shell .exp-card.map-card .media img{
    max-height:335px !important;
  }

  .experiences-shell .exp-card.map-card .copy{
    padding-top:24px !important;
  }
}


/* ===== Experiences clean header + gold Home action ===== */
.experiences-shell .app-toolbar{
  position:relative !important;
}

.experiences-shell .toolbar-meta{
  position:absolute !important;
  top:14px !important;
  right:14px !important;
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  width:auto !important;
}

.experiences-shell .toolbar-meta .language-toggle-simple{
  min-width:58px !important;
}

.experiences-shell .experiences-dock a[href="index.html"]{
  color:#06172b !important;
  background:linear-gradient(180deg,#ffe595,#d3a23f) !important;
  box-shadow:0 12px 24px rgba(217,173,73,.22) !important;
}

.experiences-shell .experiences-dock a[href="index.html"] svg{
  color:#06172b !important;
}

.experiences-shell .experiences-dock a.active{
  background:rgba(255,255,255,.06) !important;
  color:var(--gold2) !important;
  box-shadow:none !important;
}

@media (max-width:760px){
  .experiences-shell .app-toolbar{
    min-height:128px !important;
    padding:14px 74px 14px 14px !important;
    grid-template-columns:1fr !important;
  }

  .experiences-shell .toolbar-meta{
    top:14px !important;
    right:14px !important;
  }

  .experiences-shell .brand-inline{
    align-items:flex-start !important;
  }

  .experiences-shell .brand-inline img{
    width:48px !important;
    height:48px !important;
  }

  .experiences-shell .brand-inline h2{
    font-size:1.44rem !important;
  }

  .experiences-shell .brand-inline p{
    font-size:.84rem !important;
  }

  .experiences-shell .experiences-dock a[href="index.html"]{
    color:#06172b !important;
  }

  .experiences-shell .experiences-dock a[href="index.html"] span{
    color:#06172b !important;
  }
}

@media (max-width:390px){
  .experiences-shell .app-toolbar{
    min-height:118px !important;
    padding-right:68px !important;
  }

  .experiences-shell .brand-inline h2{
    font-size:1.32rem !important;
  }
}


/* ===== Experiences Dock: stronger Home return action ===== */
.experiences-shell .experiences-dock a[href="index.html"]{
  color:#06172b !important;
  background:
    radial-gradient(circle at 35% 18%,rgba(255,255,255,.75),rgba(255,255,255,0) 28%),
    linear-gradient(180deg,#fff0a8 0%,#e8bd55 46%,#c99328 100%) !important;
  box-shadow:
    0 14px 30px rgba(217,173,73,.34),
    inset 0 1px 0 rgba(255,255,255,.75),
    inset 0 -1px 0 rgba(86,54,8,.22) !important;
  border:1px solid rgba(255,231,151,.72) !important;
}

.experiences-shell .experiences-dock a[href="index.html"] svg,
.experiences-shell .experiences-dock a[href="index.html"] span{
  color:#06172b !important;
  opacity:1 !important;
}

.experiences-shell .experiences-dock a[href="index.html"]{
  font-weight:950 !important;
}

.experiences-shell .experiences-dock a.active{
  background:rgba(255,255,255,.055) !important;
  color:rgba(255,216,126,.92) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important;
}

.experiences-shell .experiences-dock a.active svg,
.experiences-shell .experiences-dock a.active span{
  color:rgba(255,216,126,.92) !important;
}

@media (max-width:760px){
  .experiences-shell .experiences-dock a[href="index.html"]{
    min-width:74px !important;
    transform:scale(1.04) !important;
  }

  .experiences-shell .experiences-dock a[href="index.html"] svg{
    width:1.28em !important;
    height:1.28em !important;
  }
}

@media (max-width:390px){
  .experiences-shell .experiences-dock a[href="index.html"]{
    min-width:70px !important;
    transform:scale(1.03) !important;
  }
}


/* ===== Final Experiences dock hierarchy ===== */
/* Home becomes the clear return action. Experiences stays active but quieter. */
.experiences-shell .experiences-dock{
  background:linear-gradient(180deg,rgba(17,45,82,.22),rgba(5,16,31,.14)) !important;
  border-color:rgba(255,216,126,.08) !important;
  box-shadow:0 8px 24px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.06) !important;
}

.experiences-shell .experiences-dock a[href="index.html"]{
  color:#06172b !important;
  background:
    radial-gradient(circle at 34% 18%,rgba(255,255,255,.82),rgba(255,255,255,0) 30%),
    linear-gradient(180deg,#fff2ad 0%,#eec45c 44%,#c89228 100%) !important;
  border:1px solid rgba(255,234,163,.78) !important;
  box-shadow:
    0 16px 34px rgba(217,173,73,.40),
    inset 0 1px 0 rgba(255,255,255,.82),
    inset 0 -1px 0 rgba(80,50,8,.25) !important;
  opacity:1 !important;
}

.experiences-shell .experiences-dock a[href="index.html"] svg,
.experiences-shell .experiences-dock a[href="index.html"] span{
  color:#06172b !important;
  opacity:1 !important;
  font-weight:950 !important;
}

.experiences-shell .experiences-dock a.active{
  background:transparent !important;
  box-shadow:none !important;
  color:rgba(255,216,126,.92) !important;
  border:0 !important;
}

.experiences-shell .experiences-dock a.active svg,
.experiences-shell .experiences-dock a.active span{
  color:rgba(255,216,126,.92) !important;
  opacity:.95 !important;
}

.experiences-shell .experiences-dock a.save{
  background:linear-gradient(180deg,#ffe595,#d3a23f) !important;
  box-shadow:0 10px 22px rgba(217,173,73,.22) !important;
}

/* Push the visual content slightly away from the fixed dock */
@media (max-width:760px){
  .experiences-shell .secondary-premium-dock{
    bottom:calc(env(safe-area-inset-bottom) + 2px) !important;
    background:linear-gradient(180deg,rgba(17,45,82,.20),rgba(5,16,31,.12)) !important;
  }

  .experiences-shell .experiences-dock a[href="index.html"]{
    min-width:82px !important;
    transform:scale(1.08) !important;
  }

  .experiences-shell .experiences-dock a.active{
    transform:scale(.98) !important;
  }

  .experiences-shell .exp-card.map-card{
    padding-bottom:18px !important;
  }

  .experiences-shell .exp-card.map-card .copy{
    padding-top:30px !important;
    padding-bottom:48px !important;
  }

  .experiences-shell .exp-card.map-card .copy h2{
    margin-top:8px !important;
  }

  .experiences-shell .exp-grid{
    padding-bottom:245px !important;
  }
}

@media (max-width:430px){
  .experiences-shell .secondary-premium-dock{
    bottom:calc(env(safe-area-inset-bottom) + 0px) !important;
  }

  .experiences-shell .experiences-dock a[href="index.html"]{
    min-width:78px !important;
    transform:scale(1.07) !important;
  }

  .experiences-shell .exp-card.map-card .copy{
    padding-top:34px !important;
  }
}


/* ===== Force Experiences dock Home to be the visible return button ===== */
/* Stronger than earlier selectors: targets first item directly in the Experiences dock */
@media (max-width:760px){
  .experiences-shell .experiences-dock a:first-child{
    color:#06172b !important;
    background:
      radial-gradient(circle at 35% 18%,rgba(255,255,255,.88),rgba(255,255,255,0) 32%),
      linear-gradient(180deg,#fff3b4 0%,#edc45b 46%,#c58e24 100%) !important;
    border:1px solid rgba(255,236,169,.82) !important;
    box-shadow:
      0 16px 34px rgba(217,173,73,.42),
      inset 0 1px 0 rgba(255,255,255,.84),
      inset 0 -1px 0 rgba(80,50,8,.25) !important;
    opacity:1 !important;
    transform:scale(1.08) !important;
    min-width:82px !important;
  }

  .experiences-shell .experiences-dock a:first-child svg,
  .experiences-shell .experiences-dock a:first-child span{
    color:#06172b !important;
    opacity:1 !important;
    font-weight:950 !important;
  }

  .experiences-shell .experiences-dock a:nth-child(3){
    background:rgba(255,255,255,.045) !important;
    color:rgba(255,216,126,.9) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important;
    border:0 !important;
    transform:scale(.98) !important;
  }

  .experiences-shell .experiences-dock a:nth-child(3) svg,
  .experiences-shell .experiences-dock a:nth-child(3) span{
    color:rgba(255,216,126,.9) !important;
    opacity:.95 !important;
  }

  /* Make the map text start lower so Safari/dock does not cover it as much */
  .experiences-shell .exp-card.map-card .copy{
    padding-top:54px !important;
    padding-bottom:62px !important;
  }

  .experiences-shell .exp-card.map-card{
    margin-bottom:34px !important;
  }
}

@media (max-width:430px){
  .experiences-shell .experiences-dock a:first-child{
    min-width:80px !important;
    transform:scale(1.08) !important;
  }

  .experiences-shell .exp-card.map-card .copy{
    padding-top:60px !important;
    padding-bottom:68px !important;
  }
}


/* ===== Experiences Dock: Home gold, Save Contact neutral ===== */
/* Home is the return action on Experiences. Save Contact stays available but no longer dominates. */
.experiences-shell .experiences-dock a[href^="index.html#home"],
.experiences-shell .experiences-dock a:first-child{
  color:#06172b !important;
  background:
    radial-gradient(circle at 34% 18%,rgba(255,255,255,.86),rgba(255,255,255,0) 32%),
    linear-gradient(180deg,#fff2ad 0%,#eec45c 44%,#c89228 100%) !important;
  border:1px solid rgba(255,234,163,.82) !important;
  box-shadow:
    0 16px 34px rgba(217,173,73,.42),
    inset 0 1px 0 rgba(255,255,255,.82),
    inset 0 -1px 0 rgba(80,50,8,.25) !important;
  opacity:1 !important;
  font-weight:950 !important;
}

.experiences-shell .experiences-dock a[href^="index.html#home"] svg,
.experiences-shell .experiences-dock a[href^="index.html#home"] span,
.experiences-shell .experiences-dock a:first-child svg,
.experiences-shell .experiences-dock a:first-child span{
  color:#06172b !important;
  opacity:1 !important;
}

/* Neutralize Save Contact on Experiences only */
.experiences-shell .experiences-dock a.save,
.experiences-shell .experiences-dock a:last-child{
  color:rgba(255,255,255,.86) !important;
  background:rgba(255,255,255,.055) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important;
  transform:none !important;
}

.experiences-shell .experiences-dock a.save span,
.experiences-shell .experiences-dock a:last-child span{
  color:rgba(255,255,255,.86) !important;
}

.experiences-shell .experiences-dock a.save .ios-app-icon,
.experiences-shell .experiences-dock a:last-child .ios-app-icon{
  box-shadow:0 6px 14px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.22) !important;
}

/* Current page indicator stays subtle */
.experiences-shell .experiences-dock a.active{
  background:rgba(255,255,255,.05) !important;
  color:rgba(255,216,126,.94) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important;
  border:0 !important;
}

.experiences-shell .experiences-dock a.active svg,
.experiences-shell .experiences-dock a.active span{
  color:rgba(255,216,126,.94) !important;
}

@media (max-width:760px){
  .experiences-shell .experiences-dock a[href^="index.html#home"],
  .experiences-shell .experiences-dock a:first-child{
    min-width:82px !important;
    transform:scale(1.08) !important;
  }

  .experiences-shell .experiences-dock a.save,
  .experiences-shell .experiences-dock a:last-child{
    min-width:auto !important;
    transform:scale(.98) !important;
  }
}


/* ===== Deep fix: Experiences dock is outside .experiences-shell ===== */
/* Use body/page level selectors so the fixed dock receives the style. */
body.experiences-page .experiences-dock a:first-child,
body.experiences-page .experiences-dock a[href^="index.html#home"]{
  color:#06172b !important;
  background:
    radial-gradient(circle at 34% 18%,rgba(255,255,255,.88),rgba(255,255,255,0) 32%),
    linear-gradient(180deg,#fff3b4 0%,#edc45b 46%,#c58e24 100%) !important;
  border:1px solid rgba(255,236,169,.86) !important;
  box-shadow:
    0 16px 34px rgba(217,173,73,.42),
    inset 0 1px 0 rgba(255,255,255,.86),
    inset 0 -1px 0 rgba(80,50,8,.25) !important;
  opacity:1 !important;
  font-weight:950 !important;
}

body.experiences-page .experiences-dock a:first-child svg,
body.experiences-page .experiences-dock a:first-child span,
body.experiences-page .experiences-dock a[href^="index.html#home"] svg,
body.experiences-page .experiences-dock a[href^="index.html#home"] span{
  color:#06172b !important;
  opacity:1 !important;
  font-weight:950 !important;
}

body.experiences-page .experiences-dock a.save,
body.experiences-page .experiences-dock a:last-child{
  color:rgba(255,255,255,.86) !important;
  background:rgba(255,255,255,.055) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important;
  transform:none !important;
}

body.experiences-page .experiences-dock a.save span,
body.experiences-page .experiences-dock a:last-child span{
  color:rgba(255,255,255,.86) !important;
}

body.experiences-page .experiences-dock a.save .ios-app-icon,
body.experiences-page .experiences-dock a:last-child .ios-app-icon{
  box-shadow:0 6px 14px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.22) !important;
}

body.experiences-page .experiences-dock a.active{
  background:rgba(255,255,255,.045) !important;
  color:rgba(255,216,126,.92) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055) !important;
  border:0 !important;
}

body.experiences-page .experiences-dock a.active svg,
body.experiences-page .experiences-dock a.active span{
  color:rgba(255,216,126,.92) !important;
}

@media (max-width:760px){
  body.experiences-page .experiences-dock a:first-child,
  body.experiences-page .experiences-dock a[href^="index.html#home"]{
    min-width:82px !important;
    transform:scale(1.08) !important;
  }

  body.experiences-page .experiences-dock a.save,
  body.experiences-page .experiences-dock a:last-child{
    min-width:auto !important;
    transform:scale(.98) !important;
  }
}


/* Calculator modal: show distance and estimated drive time clearly */
.quote-modal .summary-compact p b{
  white-space:nowrap;
}
.quote-modal .summary-compact p{
  align-items:flex-start !important;
}
.quote-modal .summary-compact p:not(.estimate-line){
  font-size:.82rem !important;
}
@media (max-width:430px){
  .quote-modal .summary-compact p{
    gap:8px !important;
  }
  .quote-modal .summary-compact p:not(.estimate-line){
    font-size:.78rem !important;
  }
}

/* === Island Ride PR official dock kit override === */
/* Island Ride PR — Dock Kit CSS
   Standalone bottom dock extracted/cleaned from the current site.
   Brand colors: navy + gold. Works on iPhone/Safari with safe-area support. */
:root{
  --navy:#061422;
  --navy2:#0d2a4a;
  --gold:#d9ad49;
  --gold2:#ffe785;
  --text:#ffffff;
  --muted:rgba(255,255,255,.76);
}

.sf-icon{
  width:1.45em;
  height:1.45em;
  display:inline-block;
  stroke:currentColor;
  fill:none;
}

/* Extra badge animation/glow for Plan Trip */
.plan-trip-dock{
  position:relative;
  overflow:visible!important;
}
.plan-trip-dock::before{
  content:"Best";
  position:absolute;
  top:-14px;
  left:50%;
  transform:translateX(-50%);
  z-index:3;
  padding:3px 10px;
  border-radius:999px;
  background:#061422;
  color:#ffe785;
  border:1px solid rgba(255,231,133,.65);
  font-size:11px;
  font-weight:950;
  line-height:1;
  box-shadow:0 6px 16px rgba(0,0,0,.28);
}

/* Main bottom dock */
.premium-dock,
.secondary-premium-dock{
  position:fixed;
  left:50%;
  bottom:calc(env(safe-area-inset-bottom,0px) + 16px);
  transform:translateX(-50%);
  width:min(720px,calc(100vw - 28px));
  min-height:74px;
  z-index:1200;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  align-items:center;
  gap:8px;
  padding:8px;
  border-radius:28px;
  background:linear-gradient(180deg,rgba(21,38,58,.78),rgba(10,18,32,.74));
  border:1px solid rgba(255,216,126,.20);
  box-shadow:0 18px 45px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter:blur(20px) saturate(1.3);
  -webkit-backdrop-filter:blur(20px) saturate(1.3);
}

.premium-dock a,
.secondary-premium-dock a{
  min-height:58px;
  border-radius:21px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  text-align:center;
  color:rgba(255,255,255,.76);
  text-decoration:none;
  font-weight:900;
  font-size:.72rem;
  line-height:1.05;
  -webkit-tap-highlight-color:transparent;
}

.premium-dock a svg,
.secondary-premium-dock a svg{
  width:24px;
  height:24px;
  color:currentColor;
}

.premium-dock a.active,
.secondary-premium-dock a.active{
  color:#ffe785;
  background:linear-gradient(180deg,rgba(255,231,133,.18),rgba(217,173,73,.10));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12);
}

.premium-dock a.plan-trip-dock,
.secondary-premium-dock a.plan-trip-dock{
  color:#061422;
  background:linear-gradient(180deg,#ffe785,#d9ad49);
  box-shadow:0 10px 26px rgba(217,173,73,.28), inset 0 1px 0 rgba(255,255,255,.28);
}

.premium-dock a.save,
.secondary-premium-dock a.save{
  color:#061422;
  background:linear-gradient(180deg,#ffe785,#d9ad49);
  box-shadow:0 10px 26px rgba(217,173,73,.28), inset 0 1px 0 rgba(255,255,255,.28);
}

/* iOS-style Contacts app icon used inside Save Contact */
.dock-contact-app,
.contact-app-dock-icon,
.ios-app-icon.contacts-app{
  width:32px;
  height:32px;
  min-width:32px;
  border-radius:10px;
  position:relative;
  overflow:hidden;
  display:block;
  background:linear-gradient(180deg,#0a1f3d,#071424);
  border:1px solid rgba(0,0,0,.22);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22), 0 2px 6px rgba(0,0,0,.18);
}
.dock-contact-app::before,
.contact-app-dock-icon::before,
.ios-app-icon.contacts-app::before{
  content:"";
  position:absolute;
  inset:4px 5px 6px;
  border-radius:7px;
  border:1.7px solid #d9ad49;
}
.dock-contact-app::after,
.contact-app-dock-icon::after,
.ios-app-icon.contacts-app::after{
  content:"";
  position:absolute;
  left:10px;
  top:8px;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#d9ad49;
  box-shadow:0 9px 0 2px #d9ad49;
  opacity:.95;
}
.contacts-band{
  position:absolute;
  right:2px;
  top:6px;
  width:3px;
  height:20px;
  border-radius:999px;
  background:#2e7df6;
}
.contacts-band.orange{right:5px;background:#f2a51a;}
.contacts-band.green{right:8px;background:#4ac26b;}
.contacts-avatar{display:none;}

/* Body spacing so fixed dock does not cover the bottom content */
.has-premium-dock{
  padding-bottom:130px;
}

/* Hide dock while custom modals are open, if your page toggles these body classes */
body.islandride-modal-open .premium-dock,
body.islandride-modal-open .secondary-premium-dock,
body.yunque-safe-open .premium-dock,
body.yunque-safe-open .secondary-premium-dock{
  display:none!important;
}

/* iPhone polish */
@media (max-width:760px){
  .premium-dock,
  .secondary-premium-dock{
    width:calc(100vw - 28px);
    min-height:66px;
    padding:7px 8px;
    bottom:calc(env(safe-area-inset-bottom,0px) + 16px);
    border-radius:24px;
  }
  .premium-dock a,
  .secondary-premium-dock a{
    min-height:50px;
    font-size:.58rem;
    border-radius:18px;
  }
  .premium-dock a svg,
  .secondary-premium-dock a svg{
    width:22px;
    height:22px;
  }
  .premium-dock a.save,
  .secondary-premium-dock a.save,
  .premium-dock a:last-child,
  .secondary-premium-dock a:last-child{
    min-width:78px;
    padding-inline:8px;
  }
  .premium-dock a.save .ios-app-icon,
  .secondary-premium-dock a.save .ios-app-icon,
  .premium-dock a:last-child .ios-app-icon,
  .secondary-premium-dock a:last-child .ios-app-icon{
    width:30px;
    height:30px;
    min-width:30px;
    border-radius:9px;
  }
}

@media (prefers-reduced-motion:reduce){
  .plan-trip-dock,
  .premium-dock,
  .secondary-premium-dock{
    animation:none!important;
    transition:none!important;
  }
}



/* === Albert Cruz black/gold identity override === */
:root,
html[data-theme="standard"],
body[data-theme="standard"]{
  --bg:#050505;
  --bg2:#0b0b0b;
  --ink:#fff9e8;
  --muted:#cfc8bb;
  --gold:#d9a73b;
  --gold2:#ffe797;
  --gold3:#9b6a1f;
  --navy:#050505;
  --navy2:#16120a;
  --line:rgba(255,218,128,.34);
  --glass:rgba(18,17,14,.76);
  --glass2:rgba(7,7,7,.82);
  --shadow:0 28px 70px rgba(0,0,0,.62);
}
body{
  background:
    radial-gradient(circle at 18% 16%,rgba(255,208,91,.16),transparent 24%),
    radial-gradient(circle at 86% 24%,rgba(255,176,56,.10),transparent 30%),
    radial-gradient(ellipse at -15% 36%,rgba(255,185,48,.16),transparent 34%),
    linear-gradient(180deg,#000 0%,#090806 46%,#000 100%) !important;
}
body::before{
  background:
    linear-gradient(115deg,transparent 0 42%,rgba(255,218,126,.11) 42.1%,transparent 42.35% 100%),
    radial-gradient(ellipse at 8% 78%,rgba(255,204,95,.13),transparent 32%) !important;
  opacity:.44 !important;
}
.brand-panel,
.hero-card,
.estimate-card,
.photo-service,
.suggestion-strip,
.trust-strip,
.payments-contact,
.premium-dock,
.modal-shell{
  background:
    radial-gradient(circle at 18% 9%,rgba(255,224,143,.10),transparent 22%),
    linear-gradient(180deg,rgba(21,18,12,.88),rgba(4,4,4,.78)) !important;
  border-color:rgba(255,218,128,.31) !important;
}
.brand-main img,
.brand img{
  background:#050505 !important;
  border:2px solid var(--gold2) !important;
  box-shadow:0 0 0 2px rgba(0,0,0,.92),0 10px 24px rgba(0,0,0,.42) !important;
  object-fit:cover !important;
}
.brand-main h1,
.brand h1,
.hero-copy h2,
.section-title,
.estimate-card h2{
  color:var(--gold2) !important;
  text-shadow:0 2px 12px rgba(0,0,0,.55);
}
.gold-chip,
.phone-highlight,
.primary-cta,
.small-gold-btn,
button[type="submit"],
.dock-item.save,
.save-contact{
  background:linear-gradient(180deg,#ffe797,#d9a73b 55%,#9b6a1f) !important;
  color:#090806 !important;
  border-color:rgba(255,231,151,.68) !important;
}
.big-cta.navy,
.secondary-cta,
.glass-chip,
.mini-action,
.dock-item{
  background:linear-gradient(180deg,rgba(28,25,18,.94),rgba(5,5,5,.82)) !important;
  border-color:rgba(255,218,128,.26) !important;
}
.hero-vehicle{
  border-color:rgba(255,218,128,.30) !important;
}
.wa-icon{
  background-image:url('assets/icons/whatsapp-apple-official.png') !important;
  background-size:cover !important;
  background-position:center !important;
}


/* ===== Albert Cruz requested cleanup pass ===== */
.phone-highlight,
.phone-highlight span,
.phone-highlight .sf-icon,
.phone-highlight .phone-label{
  color:#fff2b8 !important;
  -webkit-text-fill-color:#fff2b8 !important;
  text-shadow:0 2px 10px rgba(0,0,0,.85) !important;
}
.phone-highlight{
  background:linear-gradient(180deg,rgba(24,22,17,.98),rgba(4,4,4,.92)) !important;
  border:1px solid rgba(255,231,151,.55) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12), 0 10px 22px rgba(0,0,0,.34) !important;
}
.hero-vehicle{
  object-fit:cover !important;
  object-position:center center !important;
}
#services{display:none !important;}
.premium-dock{grid-template-columns:repeat(4,1fr) !important;}
@media (max-width:760px){
  .premium-dock{grid-template-columns:repeat(4,1fr) !important;}
}

/* Replace temporary vehicle hero with Old San Juan / El Morro image */
.hero-bg{
  background:
    linear-gradient(180deg, rgba(3,3,3,.12), rgba(3,3,3,.56)),
    url("assets/morro-hero.jpg") center center/cover no-repeat !important;
  border-bottom:1px solid rgba(255,218,128,.22) !important;
}
.hero-vehicle{display:none !important;}


/* ===== Albert Cruz v6 hero image update ===== */
.hero-bg{
  background:
    linear-gradient(180deg, rgba(3,3,3,.03), rgba(3,3,3,.18)),
    url("assets/albert-transportation-hero.png") center center/cover no-repeat !important;
}
@media (max-width:760px){
  .hero-bg{
    height:300px !important;
    background-position:center center !important;
  }
}
@media (max-width:390px){
  .hero-bg{height:285px !important;}
}
