/* LANKAORA V55 — Readability & Type Scale
   A restrained typography pass inspired by the readability of modern travel sites.
   Keeps the editorial character while increasing comfort at normal viewing distances.
*/
:root{
  --type-body:16px;
  --type-small:13px;
  --type-label:11px;
}

html{font-size:16px}
body{font-size:16px;line-height:1.7}

/* Global navigation */
.nav nav{font-size:13px}
.nav-cta{font-size:13px;padding:12px 18px}
.brand-small{font-size:11px}

/* Shared editorial text */
.eyebrow{font-size:11px}
.hero-copy{font-size:18px;line-height:1.72}
.hero-button{font-size:14px}
.hero-meta{font-size:11px}
.section-intro p:last-child{font-size:17px;line-height:1.75}
.card-text{font-size:14px;line-height:1.65}
.card-title{font-size:24px}
.number{font-size:11px}
.choice{font-size:13px;padding:10px 14px}
.step-label{font-size:10px}
.journey-result p:not(.eyebrow){font-size:14px;line-height:1.7}
.journey-result h3{font-size:33px}
.result-side>span,.result-link{font-size:12px}

/* Maps / destination grids */
.map-copy>p:not(.eyebrow){font-size:17px;line-height:1.75}
.legend{font-size:11px}
.popup-title{font-size:17px}
.popup-type{font-size:11px}
.destination-grid span{font-size:11px}
.destination-grid h3{font-size:28px}
.destination-grid p{font-size:13px;line-height:1.6}

/* Planning / itinerary */
.trip-summary{font-size:11px}
.day-num{font-size:11px}
.day-top h4{font-size:27px}
.day-tag{font-size:10px}
.day-columns b{font-size:10px}
.day-columns p{font-size:14px;line-height:1.65}
.day-side span{font-size:10px}
.day-side strong{font-size:14px}
.day-side small{font-size:12px;line-height:1.55}
.plan-note{font-size:14px;line-height:1.7}
.control-group>span,.estimate>span{font-size:10px}
.mini-choice{font-size:12px}
.estimate strong{font-size:24px}
.estimate small{font-size:11px}
.save-bar strong{font-size:15px}
.save-bar span{font-size:12px}
.save-actions button{font-size:12px}

/* Destination cards / detail */
.destination-card h3{font-size:29px}
.destination-card p{font-size:13px;line-height:1.6}
.destination-card b{font-size:11px}
.detail-hero-copy span{font-size:10px}
.detail-hero-copy p{font-size:17px;line-height:1.7}
.detail-body>div>span{font-size:10px}
.experience-pills i{font-size:12px}
.detail-facts small{font-size:9px}
.detail-facts strong{font-size:13px}
.detail-actions button{font-size:12px}

/* Build / forms */
.build-intro>p:last-child{font-size:15px;line-height:1.75}
.trip-form label{font-size:9px}
.trip-form input,.trip-form select,.trip-form textarea{font-size:14px}
.form-bottom strong{font-size:14px}
.form-bottom small{font-size:11px}
.form-bottom button,.form-success button{font-size:12px}
.form-success>p:not(.eyebrow){font-size:14px;line-height:1.75}

/* Guide / content-heavy pages */
.guide43-hero p:last-child{font-size:19px;line-height:1.8}
.guide43-kicker{font-size:11px}
.guide43-intro p{font-size:17px;line-height:1.85}
.guide43-copy p{font-size:16px;line-height:1.85}
.guide43-fact span,.guide43-season span,.guide43-links a{font-size:10px}
.guide43-fact strong,.guide43-season strong{font-size:15px}
.guide43-season small{font-size:13px;line-height:1.6}
.guide43-note{font-size:12px}

/* V44 visual homepage */
.home-hero-photo-copy>p:not(.eyebrow){font-size:18px;line-height:1.78}
.hero-scroll-note{font-size:10px}
.image-credit{font-size:9px}
.island-statement>p{font-size:18px;line-height:1.85}
.story-heading>p:not(.eyebrow){font-size:15px;line-height:1.85}
.section-link{font-size:11px}
.photo-label{font-size:9px}
.dark-band-copy>p:not(.eyebrow){font-size:16px;line-height:1.85}
.light-link{font-size:11px}
.heritage-copy>p:not(.eyebrow){font-size:16px;line-height:1.85}
.heritage-links strong{font-size:15px}
.heritage-links span{font-size:11px}
.world-card span{font-size:9px}
.world-card h3{font-size:27px}
.world-card p{font-size:14px;line-height:1.75}
.world-card b{font-size:10px}
.frame-copy>p:not(.eyebrow){font-size:16px;line-height:1.85}
.home-plan-strip>div:last-child>p{font-size:16px;line-height:1.85}

/* Smaller utility copy */
footer{font-size:11px}
.small-note{font-size:12px}

/* Mobile: preserve hierarchy but keep body copy comfortably readable */
@media(max-width:700px){
  body{font-size:16px}
  .nav nav{font-size:13px}
  .nav-cta{font-size:12px}
  .hero-copy,.home-hero-photo-copy>p:not(.eyebrow){font-size:16px;line-height:1.72}
  .section-intro p:last-child,.map-copy>p:not(.eyebrow),.island-statement>p{font-size:16px}
  .card-text,.destination-grid p,.destination-card p{font-size:14px}
  .day-columns p{font-size:14px}
  .detail-hero-copy p{font-size:16px}
  .world-card p{font-size:14px}
  .dark-band-copy>p:not(.eyebrow),.heritage-copy>p:not(.eyebrow),.frame-copy>p:not(.eyebrow),.home-plan-strip>div:last-child>p{font-size:15px}
}

@media(max-width:560px){
  .brand-small{font-size:10px}
  .eyebrow{font-size:10px}
  .card-title{font-size:23px}
  .destination-grid h3{font-size:27px}
  .destination-card h3{font-size:27px}
  .detail-hero-copy h3{font-size:50px}
  .home-hero-photo-copy>p:not(.eyebrow){font-size:15px}
  .story-heading>p:not(.eyebrow),.heritage-copy>p:not(.eyebrow){font-size:15px}
}

/* Focus visibility remains clear at the larger type scale */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid currentColor;outline-offset:3px}
