/* Carnet phone layout. Desktop presentation stays defined in style.css. */
@media(max-width:760px){
 html{scroll-padding-top:75px}body{font-size:16px;padding-bottom:calc(76px + env(safe-area-inset-bottom));-webkit-text-size-adjust:100%}main{padding:0 18px;width:100%;min-width:0}.view{padding-bottom:30px}p,a,h1,h2,h3,td{overflow-wrap:anywhere}
 .topbar{height:65px;padding:10px 18px;gap:12px;flex-wrap:nowrap;background:var(--bg);border-bottom:1px solid var(--line)}.brand{gap:8px}.brand-icon{font-size:25px}.brand-name{font-size:27px}.brand small{display:none}.variant-switch{font-size:13px;min-height:44px;display:flex;align-items:center;margin-left:auto}
 .topbar nav{position:fixed;bottom:0;left:0;right:0;z-index:20;width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:8px 7px calc(8px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);box-shadow:0 -5px 22px #243b3210}.topbar nav a{min-height:46px;display:flex;align-items:center;justify-content:center;padding:6px 3px;text-align:center;font-size:12px;line-height:1.25;border-radius:7px}.topbar nav a.active{background:#e6e9dc;font-weight:600}.topbar nav a.active:after{display:none}
 .hero{display:flex;min-height:0;padding:25px 0 20px;gap:22px}.hero-copy{padding:0}.hero .eyebrow{font-size:10px;letter-spacing:1.2px;margin-bottom:14px}.hero h1{font-size:clamp(33px,9.2vw,43px);letter-spacing:-1.25px;line-height:1.08;margin:0 0 17px}.hero h1 br{display:none}.intro{font-size:16px;line-height:1.65;margin:0;max-width:none}.hero-actions{display:grid;grid-template-columns:1fr;gap:8px;margin:20px 0}.hero-actions .button{min-height:48px;font-size:15px;width:100%;padding:12px 16px}.hero-actions .ghost{border:1px solid var(--line)}.trip-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;font-size:12px}.trip-facts span{padding-right:8px}.trip-facts strong{font-size:27px}.hero-photo{width:100%;height:235px}.hero-photo figcaption{left:18px;right:18px;bottom:17px;font-size:11px}.hero-photo figcaption strong{font-size:25px}.hero-date{position:static;align-self:flex-start;font-size:11px;letter-spacing:.6px;margin-top:-10px}
 .section-head{margin:27px 0 20px;gap:15px}.section-head h2{font-size:31px;letter-spacing:-.8px}.eyebrow{font-size:10px;letter-spacing:1.25px;margin-bottom:14px}.text-link{font-size:14px;min-height:44px;display:inline-flex;align-items:center}.featured-grid,.hike-grid,.place-grid{grid-template-columns:minmax(0,1fr);gap:22px}.route-card,.place-card{min-width:0}.card-photo,.featured-grid .card-photo,.place-photo{height:215px}.card-copy,.featured-grid .card-copy,.place-copy{padding:19px}.card-copy h3,.featured-grid .card-copy h3,.place-copy h3{font-size:25px;line-height:1.15;min-height:0;margin-bottom:16px}.card-description,.place-copy>p{font-size:15px;line-height:1.65}.card-metrics{font-size:14px;gap:12px;flex-wrap:wrap}.badge{font-size:11px;letter-spacing:.3px;line-height:1.5}.card-actions{gap:10px;margin-top:18px}.card-actions .button{min-height:46px;font-size:14px;padding:10px 14px;flex:1}.detail-button{width:100%;min-height:46px;text-align:left;font-size:14px;padding:9px 0}.photo-credit{font-size:12px;line-height:1.6}.place-copy .eyebrow{font-size:10px}.place-copy .links{display:grid;grid-template-columns:1fr;gap:5px;font-size:14px}.place-copy .links a{min-height:40px;padding:7px 0}.card-index{font-size:12px}.card-island{font-size:12px}
 .page-heading{padding:27px 0 15px}.page-heading h1{font-size:38px;line-height:1.1;letter-spacing:-1.2px;margin-bottom:18px}.page-heading p:last-child{font-size:16px;line-height:1.65}.toolbar{gap:14px;margin:12px 0}.filter-group{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:6px}.filter-group button{padding:9px 6px;min-height:46px;font-size:12px;line-height:1.3}.search-box{border:1px solid var(--line);padding:8px 12px;background:var(--surface);min-height:49px}.search-box input{font-size:16px;min-width:0;width:100%}.result-count{font-size:13px;margin-bottom:20px}.empty{padding:35px 15px;font-size:15px}
 .journey-strip{gap:20px;margin:35px 0;padding:24px 0}.journey-strip h3{font-size:25px}.journey-strip p{font-size:15px}.notice{padding:20px;margin-top:24px;font-size:15px;line-height:1.7}.notice strong{font-size:22px}.notice a{font-size:14px;display:inline-block;padding:6px 0}.island-maps{gap:22px}.island-maps h3{font-size:25px}.island-maps iframe{height:245px}
 .program-section{margin-bottom:15px}.program-section summary{font-size:21px;padding:19px;line-height:1.35}.program-section .section-content{padding:0 17px 20px;font-size:16px;line-height:1.75}.section-content figure{margin:20px 0}.section-content h3{font-size:25px;margin:26px 0 16px}.section-content ul,.section-content ol{padding-left:22px}.section-content li{margin:10px 0}.day-photo{height:205px;margin:0}.section-content .scroll{overflow:visible}.section-content table{display:block;min-width:0;width:100%;font-size:15px}.section-content tbody{display:block;width:100%}.section-content tr{display:block;border:1px solid var(--line);margin:15px 0;background:var(--surface)}.section-content .table-heading{display:none}.section-content td{display:block;width:100%;padding:12px 14px;border:0;border-bottom:1px solid var(--line);line-height:1.65}.section-content td:last-child{border-bottom:0}.section-content td:before{content:attr(data-label);display:block;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--accent);margin-bottom:6px}
 dialog{width:calc(100% - 20px);max-height:calc(100dvh - 30px);margin:auto;border-radius:10px}.detail-photo{height:210px}.detail-text{padding:20px}.detail-text h2{font-size:28px;line-height:1.2;letter-spacing:-.7px}.detail-text>p{font-size:15px;line-height:1.7}.detail-text .specs{grid-template-columns:1fr;gap:12px}.detail-text .specs div{font-size:15px;line-height:1.65;padding:16px}.detail-text .specs strong{font-size:11px}.close-dialog{height:46px;width:46px;position:sticky;top:10px;float:right;margin-right:10px;margin-bottom:-56px}
 .credits-row{grid-template-columns:80px minmax(0,1fr);gap:15px;font-size:14px}.credits-row img{width:80px;height:85px}.credits-row a{display:inline-block;min-height:40px;padding:6px 0}.credits-row p{overflow-wrap:anywhere}footer{padding:26px 18px;gap:22px}footer>div{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:8px;font-size:14px}footer>div a{min-height:44px;padding:7px 0}footer>p{font-size:12px;line-height:1.7}
}
@media(max-width:360px){main{padding:0 14px}.topbar{padding:9px 14px}.hero h1{font-size:33px}.card-copy,.place-copy{padding:16px}.filter-group button{font-size:11px}.card-actions .button{font-size:13px;padding:10px}.topbar nav a{font-size:11px}}
