.destination-page .site-header { background: rgba(248,250,252,.92); box-shadow: 0 1px 0 var(--line); backdrop-filter: blur(16px); }
.destination-hero { padding-top: 175px; padding-bottom: 65px; }
.destination-hero h1 { margin-top: 24px; font-size: clamp(3.8rem,7vw,7rem); }
.destination-hero h1 em { color: #6b7632; }
.destination-hero > p:last-child { max-width: 520px; margin: 30px 0 0; color: var(--muted); }
body:has(#favourites-grid) .destination-hero { padding-top: 108px; padding-bottom: 28px; }
body:has(#favourites-grid) .destination-hero h1 { margin-top: 10px; font-size: clamp(4rem,7vw,6.875rem); line-height: .9; }
body:has(#favourites-grid) .destination-hero > p:last-child { margin-top: 12px; }
.favourites-section { min-height: 420px; padding-bottom: 120px; }
.favourites-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 55px 20px; }
.saved-card { position: relative; }
.saved-image { position: relative; display: block; aspect-ratio: .78; overflow: hidden; background: var(--cream); }
.saved-image img { width: 100%; height: 100%; object-fit: var(--media-fit,cover); object-position: var(--media-x,50%) var(--media-y,50%); transform: scale(var(--media-zoom,1)); background: var(--media-bg,var(--cream)); }
.saved-image img { transition: transform .45s; }
.saved-card:hover img { transform: scale(1.04); }
.saved-image.tea img { width: 100%; height: 100%; object-fit: contain; }
.saved-image.strip img { position: absolute; width: 500%; max-width: none; height: 100%; }
.saved-image.panel-1 img { left: 0; }.saved-image.panel-2 img { left: -100%; }.saved-image.panel-3 img { left: -200%; }.saved-image.panel-4 img { left: -300%; }.saved-image.panel-5 img { left: -400%; }
.saved-meta { display: flex; justify-content: space-between; gap: 20px; padding-top: 15px; }
.saved-meta h2 { font-size: 1.15rem; }
.saved-meta p { margin: 6px 0 0; color: var(--muted); font-size: .78rem; }
.remove-saved { position: absolute; z-index: 2; top: 14px; right: 14px; width: 38px; height: 38px; border: 0; border-radius: 50%; background: var(--ink); color: white; cursor: pointer; }
.destination-empty { padding: 85px 0; border-top: 1px solid var(--line); text-align: center; }
.destination-empty p { color: var(--muted); }
.destination-empty .button { margin-top: 20px; }
.account-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(55px,9vw,130px); padding-bottom: 120px; }
.account-panel { padding: 40px; border: 1px solid var(--line); }
.account-panel h2 { font-size: 2rem; }
.account-panel > p { color: var(--muted); }
.account-form { display: grid; gap: 16px; margin-top: 30px; }
.account-form label { font-size: .7rem; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; }
.account-form input { padding: 12px 0; border: 0; border-bottom: 1px solid var(--line); outline: none; background: transparent; }
.account-form .button { margin-top: 15px; }
.account-note { min-height: 24px; color: #6b7632; font-size: .82rem; }
.account-benefits { display: grid; grid-template-columns: repeat(2,1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.account-benefit { padding: 28px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.account-benefit span { color: var(--muted); font: 600 .65rem "Manrope"; letter-spacing: .1em; text-transform: uppercase; }
.account-benefit h2 { margin-top: 22px; font-size: 1.4rem; }
.account-benefit p { color: var(--muted); font-size: .86rem; }
@media(max-width:820px) { .favourites-grid { grid-template-columns: repeat(2,1fr); } .account-layout { grid-template-columns: 1fr; } }
@media(max-width:520px) { body:has(#favourites-grid) .destination-hero { padding-top: 82px; padding-bottom: 20px; } body:has(#favourites-grid) .destination-hero h1 { font-size: clamp(3rem,14vw,4rem); } .favourites-grid,.account-benefits { grid-template-columns: 1fr; } .account-panel { padding: 25px; } }
