/* Shared passport palette, legible arrival filters, and touch-sized controls. */
.mobile-nav{background:#fff8eef5}.hero h1 em,.my-brands-header h1 em{color:#16717A}.hero-copy>p,.page-intro p{color:#64645d}
.discovery-status{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px}
.discovery-status button{display:flex;align-items:center;gap:8px;min-height:46px;padding:10px 15px;border:1px solid var(--line);border-radius:14px;background:white;font-size:13px;font-weight:600}
.discovery-status button[aria-pressed=true]{background:#202322;border-color:#202322;color:#fff8ee}.discovery-status button svg{width:17px;height:17px}
.status-count{font-size:11px;border-radius:8px;background:#eeeae2;padding:2px 6px;color:#64645d}.discovery-status [aria-pressed=true] .status-count{background:#e2eea5;color:#202322}
.discovery-context,.save-disclosure{font-size:13px;line-height:1.7;color:#64645d;margin:0 0 18px}.save-disclosure{margin:14px 0 0}
.card-arrival-summary{font-size:13px;line-height:1.65;color:#64645d;margin-top:10px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.brand-logo{display:block;object-fit:contain;width:80%;height:76px;max-width:210px;margin:auto}.brand-art:has(.brand-logo){background:#fff;justify-content:center;border-bottom:1px solid var(--line)}
.brand-art .brand-logo{filter:none}.detail-art .brand-logo{width:85%;height:100px}
.alert-settings-link{display:flex;align-items:center;gap:9px;padding:15px 18px;margin:0 0 18px;border:1px solid var(--line);border-radius:14px;font-size:13px;background:white;line-height:1.6}.alert-settings-link svg:last-child{margin-left:auto}
.saved-layout,.profile-layout{grid-template-columns:1fr}.profile-layout{max-width:650px}.my-preferences{background:white}.my-preferences h2{color:var(--ink)}.my-email-option{align-items:center;min-height:48px}.my-email-option input{width:24px;height:24px;accent-color:#16717A}
.my-brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.arrivals-banner{display:flex;align-items:center}.arrivals-banner>div{flex:1;min-width:0}.arrivals-banner>.text-link{flex-shrink:0}.arrivals-banner .banner-icon{flex-shrink:0}
.desktop-nav{gap:20px}.mobile-nav a[aria-current=page]{color:#16717A}.my-preferences .my-small a,.my-account-signout{text-decoration:underline}
@media(max-width:760px){
  .header-inner{padding:0 16px;gap:10px}.wordmark{font-size:17px}.location-switch{font-size:10px;max-width:150px;min-height:44px}.main-shell{padding:0 16px}
  .hero{padding:26px 0 22px}.hero h1{font-size:38px}.hero-copy>p{font-size:14px}.hero-note{line-height:1.6;font-size:12px;align-items:flex-start}.hero-note svg{margin-top:2px}
  .discovery-status{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:16px}.discovery-status button{padding:10px 8px;justify-content:center;gap:5px;font-size:12.5px;white-space:nowrap}
  .brand-grid,.my-brand-grid{grid-template-columns:1fr;gap:14px}.brand-card{display:grid;grid-template-columns:90px minmax(0,1fr);padding:14px;gap:14px;align-items:start;background:white}
  .brand-card .card-cover-link{min-width:0}.brand-card .brand-art{height:100px;padding:12px 6px;border:1px solid var(--line);border-radius:13px;background:white}.brand-card .art-origin{display:none}.brand-card .brand-logo{width:100%;height:70px}.brand-card-body{padding:0;min-width:0}
  .brand-card h3{font-size:17px;padding-right:28px;margin-top:10px}.brand-card .card-status{font-size:10px;max-width:calc(100% - 36px);white-space:normal}.brand-card .card-category{font-size:12px}.brand-card .card-location{font-size:12px;min-height:0;margin-top:10px}.brand-card .card-footer{display:flex;flex-wrap:wrap;gap:4px 12px}.card-link,.source-indicator{min-height:44px;font-size:12px}.save-button{width:44px;height:44px;right:5px;top:5px}
  .card-arrival-summary{font-size:13px;line-height:1.6}.discovery-context{font-size:13px;line-height:1.7}.section-heading{align-items:flex-start;flex-wrap:wrap}.section-heading h2{font-size:22px;line-height:1.3}
  .mobile-nav{grid-template-columns:repeat(5,minmax(0,1fr));padding:8px 4px max(8px,env(safe-area-inset-bottom));gap:0}.mobile-nav a{font-size:10px;min-height:48px;justify-content:center;white-space:nowrap}.mobile-nav a svg{width:20px;height:20px}.toast{bottom:calc(80px + env(safe-area-inset-bottom));font-size:13px;line-height:1.5;width:max-content;max-width:calc(100% - 32px)}
  .arrivals-banner{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;padding:20px}.arrivals-banner>div{min-width:0}.arrivals-banner>.text-link{grid-column:2;margin:0;min-height:44px;justify-content:flex-start}.arrivals-banner h3{font-size:18px;line-height:1.35}.arrivals-banner p{font-size:13px;line-height:1.7}
  .my-brands-header h1{font-size:34px}.my-brands-header{padding:27px 0 22px}.my-account{background:white}.my-account-signout{min-height:44px;display:inline-flex;align-items:center;margin:0 12px 0 0}.my-small{font-size:13px!important}.my-tabs{width:100%}.my-preferences{padding:22px}.alert-settings-link{font-size:13px}
  .detail-hero{display:flex;flex-direction:column;gap:18px;padding:22px 0}.detail-art{width:120px;height:100px}.detail-art .brand-logo{height:65px}.detail-head{width:100%}.detail-head h1{font-size:30px}.detail-head .detail-description,.detail-head .button-row{margin-left:0;padding-top:0}.detail-head .detail-description{font-size:15px;line-height:1.75}.save-disclosure{font-size:12px;line-height:1.7}
  .map-panel{height:400px;height:min(440px,55svh);min-height:310px}.discovery-filter-panel select,.map-filter select,.feedback-form input,.feedback-form textarea{font-size:16px}
  dialog{max-height:calc(100dvh - 32px);overflow-y:auto}.dialog-close{width:44px;height:44px}.site-footer{padding-bottom:calc(100px + env(safe-area-inset-bottom))}
}
@media(max-width:350px){.wordmark{font-size:15px}.location-switch{max-width:132px}.brand-card{grid-template-columns:70px minmax(0,1fr);gap:11px;padding:12px}.brand-card h3{font-size:16px}.brand-card .brand-art{height:85px}.brand-card .brand-logo{height:58px}.mobile-nav a{font-size:9px}}

/* Card photo (Wikimedia Commons etc.): covers the art box; the logo sits on a white pill. */
.brand-art.has-photo{position:relative;overflow:hidden}.brand-art .art-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.brand-art.has-photo .brand-logo,.brand-art.has-photo .brand-wordmark{position:absolute;left:8px;bottom:8px;z-index:1;width:auto;max-width:55%;height:30px;margin:0;padding:5px 9px;background:#fff;border-radius:9px;box-shadow:0 1px 4px #0002;font-size:13px}.brand-art.has-photo .art-origin{z-index:1}
@media(max-width:760px){.brand-card .brand-art.has-photo{padding:0}.brand-card .brand-art.has-photo .brand-logo,.brand-card .brand-art.has-photo .brand-wordmark{height:24px;left:5px;bottom:5px;padding:3px 6px;max-width:80%}}

.type-chips{display:flex;gap:7px;overflow-x:auto;margin:0 0 14px;padding-bottom:2px;scrollbar-width:none}.type-chips::-webkit-scrollbar{display:none}.type-chips button{flex:0 0 auto;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 13px;font-size:13px;font-weight:600;white-space:nowrap}.type-chips button[aria-pressed=true]{background:#202322;border-color:#202322;color:#fff8ee}

/* Card follow button with a visible label (users missed the bell-only icon) */
.brand-card .save-button.with-label{width:auto;height:34px;padding:0 12px 0 10px;border-radius:999px;display:flex;align-items:center;gap:6px;font-weight:800;font-size:13px;line-height:1;font-family:inherit;color:#1d2b2f;background:#fffffff2;border:1px solid #ffffff;box-shadow:0 2px 10px #0000002e;top:9px;right:9px}
.brand-card .save-button.with-label svg{width:16px;height:16px;flex:none}
.brand-card .save-button.with-label[aria-pressed=true]{background:var(--green);color:#edf4d2;border-color:var(--green)}
/* Holiday looks (public/holidays.js) */
[data-holiday] .site-header .logo-symbol{background:var(--holiday-tile);color:var(--holiday-text);width:auto;min-width:36px;padding:0 5px}
[data-holiday] .site-header .logo-symbol .logo-period{color:var(--holiday-period)}
.site-header .logo-symbol .holiday-dot{font-size:.62em;margin-left:1px;letter-spacing:0}
.logo-symbol.holiday-border{box-shadow:0 0 0 1.5px var(--holiday-border),0 2px 6px #0003}
.holiday-hat{position:absolute;top:-14px;left:-2px;width:22px;height:22px;transform:rotate(-14deg);pointer-events:none}
.holiday-hat i{position:absolute;display:block}
.holiday-hat .cone{left:2px;top:3px;width:18px;height:14px;clip-path:polygon(50% 0,100% 100%,0 100%);background:#D62828}
.holiday-hat .band{left:0;top:14px;width:22px;height:5px;border-radius:3px;background:#fff}
.holiday-hat .pom{left:7px;top:-2px;width:7px;height:7px;border-radius:50%;background:#fff;box-shadow:0 0 0 .5px #0001}
.holiday-hat.party .cone{background:repeating-linear-gradient(-30deg,#F5D06F 0 4px,#1D1B3A 4px 6px)}
.holiday-hat.party .band{background:#C9A227}.holiday-hat.party .pom{background:#E0457B}
.holiday-shine{position:absolute;inset:0;border-radius:inherit;overflow:hidden;pointer-events:none}
.holiday-shine::after{content:"";position:absolute;top:-10px;bottom:-10px;left:-20px;width:9px;background:#f5d06f80;transform:rotate(20deg);animation:holiday-shine 2.6s linear infinite}
@keyframes holiday-shine{0%{left:-20px}50%,100%{left:120%}}
.logo-symbol.hf-heartbeat{animation:holiday-beat 1.6s ease-in-out infinite}
@keyframes holiday-beat{0%,40%,100%{transform:rotate(-5deg) scale(1)}10%{transform:rotate(-5deg) scale(1.14)}30%{transform:rotate(-5deg) scale(1.1)}}
.holiday-perch{position:absolute;top:-12px;left:50%;transform:translateX(-50%) rotate(5deg);font-size:15px;line-height:1;pointer-events:none}
.holiday-spider{position:absolute;top:100%;right:3px;display:flex;flex-direction:column;align-items:center;font-size:10px;transform-origin:top center;animation:holiday-swing 2.4s ease-in-out infinite;pointer-events:none}
.holiday-spider i{display:block;width:1px;height:6px;background:#8a8a8a}
@keyframes holiday-swing{0%,100%{transform:rotate(14deg)}50%{transform:rotate(-14deg)}}
.holiday-header{position:relative}
.holiday-header>.header-inner{position:relative;z-index:1}
.holiday-decor{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.holiday-decor i,.holiday-decor span{position:absolute;display:block;font-style:normal}
.holiday-decor .wire{left:0;right:0;bottom:8px;height:1.5px;background:#1E5B3A}
.holiday-decor .bulb{bottom:0;width:7px;height:10px;border-radius:4px;box-shadow:0 0 6px currentColor;animation:holiday-twinkle 1.8s ease-in-out infinite}
@keyframes holiday-twinkle{50%{opacity:.35;box-shadow:none}}
.holiday-decor .papel-string{left:0;right:0;top:2px;height:1px;background:#3B1F57}
.holiday-decor .papel{top:2px;width:16px;height:13px;border-radius:0 0 2px 2px;-webkit-mask:radial-gradient(3px 1.5px at 50% 9px,#0000 98%,#000) ;mask:radial-gradient(3px 1.5px at 50% 9px,#0000 98%,#000)}
.holiday-decor .papel.white{outline:.5px solid #C9C2B4}
.holiday-decor .cobweb{right:-6px;top:-8px;font-size:44px;opacity:.35}
.holiday-decor .amb{top:-10px;animation:holiday-amb-fall linear infinite}
.holiday-decor .snow{aspect-ratio:1;border-radius:50%;background:#A9C6DE}
.holiday-decor .petal{width:7px;height:5px;border-radius:50%}
.holiday-decor .confetti{width:4px;height:7px;outline:.5px solid #0001}
.holiday-decor .heart{top:auto;bottom:-14px;animation-name:holiday-amb-rise}
.holiday-decor .star{color:#E8B923;animation-name:holiday-twinkle-star}
.holiday-decor .bat{left:0;font-size:13px;animation-name:holiday-bat}
@keyframes holiday-amb-fall{0%{opacity:0;transform:translate(0,0) rotate(0)}10%{opacity:1}85%{opacity:1}100%{opacity:0;transform:translate(var(--drift),110px) rotate(300deg)}}
@keyframes holiday-amb-rise{0%{opacity:0;transform:translate(0,0)}10%{opacity:1}85%{opacity:1}100%{opacity:0;transform:translate(var(--drift),-110px)}}
@keyframes holiday-twinkle-star{0%,100%{opacity:.15}50%{opacity:1}}
@keyframes holiday-bat{0%{transform:translate(-30px,0)}25%{transform:translate(25vw,-6px) scaleY(.6)}50%{transform:translate(50vw,0)}75%{transform:translate(75vw,6px) scaleY(.6)}100%{transform:translate(calc(100vw + 30px),0)}}
.mini-flag{display:inline-flex;width:21px;height:12px;border-radius:2px;overflow:hidden;box-shadow:0 0 0 .5px #0003;vertical-align:-2px;margin-right:8px}
.mini-flag i{flex:1;display:flex;align-items:center;justify-content:center}
.mini-flag i:nth-child(1){background:#006847}.mini-flag i:nth-child(2){background:#fff}.mini-flag i:nth-child(3){background:#CE1126}
.mini-flag b{width:4px;height:4px;border-radius:50%;background:#8C6A2F}
.holiday-burst .mini-flag{width:1.2em;height:.7em}
.holiday-banner.holiday-stripe{border-bottom:4px solid;border-image:linear-gradient(90deg,#006847 0 33.3%,#fff 33.3% 66.6%,#CE1126 66.6%) 1}
.holiday-banner{padding:9px 22px;font-size:13px;font-weight:700;text-align:center;line-height:1.5}
.holiday-burst{position:fixed;inset:0;pointer-events:none;z-index:9999;overflow:hidden}
.holiday-burst span{position:absolute;top:-40px;animation:holiday-fall 2.6s linear forwards;opacity:0}
@keyframes holiday-fall{0%{opacity:0;transform:translate(0,0) rotate(0)}5%{opacity:1}80%{opacity:1}100%{opacity:0;transform:translate(var(--drift),92vh) rotate(var(--spin))}}
@media(prefers-reduced-motion:reduce){.holiday-burst,.holiday-decor .amb:not(.star){display:none}.logo-symbol.hf-heartbeat,.holiday-spider,.holiday-shine::after,.holiday-decor .bulb,.holiday-decor .star{animation:none}}
