/* ===== home-declutter (mockup): fewer blocks, more air. Wording, prices and rules are unchanged. ===== */

/* --- Romantasy originals strip: its own block (moved out of the specials teaser) --- */
.hd-rm{padding:18px 0 0}
.hd-rm .st-rm{margin-top:0}
@media (max-width:639px){
  /* phones, from Nov 1: Romantasy is already the top feature, so the second strip goes */
  html.hp-feat-rm .hd-rm{display:none}
}

/* --- Explore: Weekly Specials / Dream Lab / Gift as one row of three tiles --- */
.hd-explore{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:var(--wrap);margin:0 auto;padding:22px 22px 30px;box-sizing:border-box}
.hd-explore>section{padding:0!important;margin:0;min-width:0;position:relative}
.hd-explore .st-inner,.hd-explore .lt-inner,.hd-explore .gt-inner{
  flex-direction:column;flex-wrap:nowrap;justify-content:flex-start;align-items:center;text-align:center;gap:10px;
  height:100%;box-sizing:border-box;width:auto!important;max-width:none;margin:0!important;padding:16px 10px 14px;border-radius:10px}
.hd-explore .st-text,.hd-explore .lt-text,.hd-explore .gt-text{flex:1 1 auto;align-items:center;justify-content:flex-start;width:100%}
.hd-explore .st-kick,.hd-explore .lt-kick,.hd-explore .gt-kick{display:none}
.hd-explore .st-title,.hd-explore .lt-title,.hd-explore .gt-title{font-size:clamp(.78rem,2.5vw,1.25rem);line-height:1.2;letter-spacing:.04em;overflow-wrap:anywhere}
.hd-explore .st-inner img{width:64px;height:64px}
.hd-explore .lt-inner img.lt-med{width:46px;height:68px}
.hd-explore .gt-ico{width:58px;height:58px}.hd-explore .gt-ico svg{width:30px;height:30px}
/* the frost / gold-glitter effects are big full-width banners; inside a small tile they read as noise */
.hd-explore .ice,.hd-explore .ice-sweep,.hd-explore .st-fx,.hd-explore .st-aura{display:none!important}
.hd-explore .ice-fx{opacity:0!important} /* kept in layout (not display:none) so the sparkle script in script.js keeps a non-zero size */
.hd-explore .specials-teaser.gilded .st-inner::after{display:none}
.hd-explore .lt-inner.iced{border-color:#2b8f8a;border-radius:10px;box-shadow:0 0 24px rgba(46,230,214,.2),0 12px 30px rgba(0,0,0,.5)}
@media (max-width:767px){
  .hd-explore{gap:8px;padding:18px 14px 26px}
  .hd-explore .st-sub,.hd-explore .lt-sub,.hd-explore .gt-sub{display:none}
  /* the button label stays, shown as a small link line under the title (whole tile is the link) */
  .hd-explore .btn{width:auto!important;padding:0;min-height:0;background:none;border:0;box-shadow:none;color:var(--brass);
    font:600 .64rem/1.35 var(--caps);letter-spacing:.1em;text-transform:uppercase;white-space:normal;text-decoration:underline;text-underline-offset:3px}
  .hd-explore .btn::before,.hd-explore .btn::after{display:none}
}
@media (min-width:768px){
  .hd-explore{gap:18px;padding:30px 22px 40px}
  .hd-explore .st-inner,.hd-explore .lt-inner,.hd-explore .gt-inner{padding:24px 18px 20px;gap:12px}
  .hd-explore .st-inner img{width:84px;height:84px}
  .hd-explore .lt-inner img.lt-med{width:58px;height:86px}
  .hd-explore .st-sub,.hd-explore .lt-sub,.hd-explore .gt-sub{font-size:.95rem;margin-top:4px}
  .hd-explore .btn{margin-top:auto}
}
@media (min-width:768px) and (max-width:1023px){.hd-explore .lt-sub,.hd-explore .gt-sub{display:none}}

/* --- flash sheets that are not the phone's top feature: one swipe row instead of a tall grid --- */
@media (max-width:639px){
  #birth-flowers .flash-sheet,#halloween:not(.hp-sec) .flash-sheet{
    flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding:12px;contain:paint}  /* contain: WebKit otherwise counts the scrolled-off cards in the page width */
  #birth-flowers .flash-sheet>.flash,#halloween:not(.hp-sec) .flash-sheet>.flash{flex:0 0 40%;scroll-snap-align:start}
  #birth-flowers .prio-chip{display:none!important}   /* one Priority chip on the page (Halloween / Book) is enough */
}

/* --- phones: lighter section chrome --- */
@media (max-width:639px){
  #birth-flowers,#prices,#artists,#visit,#book,#halloween:not(.hp-sec){padding:52px 0}
  #birth-flowers .eyebrow,#prices .eyebrow,#artists .eyebrow,#visit .eyebrow,#book .eyebrow,#halloween:not(.hp-sec) .eyebrow{display:none}
  #birth-flowers .section-head,#prices .section-head,#artists .section-head{margin-bottom:20px}
}

/* --- Prices: three compact cards side by side on phones (same prices and wording) --- */
@media (max-width:639px){
  #prices .tiers{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  #prices .tier{padding:16px 6px 14px}
  #prices .tier::after{inset:6px}
  #prices .tier h3{font-size:.6rem;letter-spacing:.1em;padding-top:.2em;min-height:2.6em;display:flex;align-items:center;justify-content:center}
  #prices .tier-price{font-size:clamp(1.05rem,5.4vw,1.4rem);margin:.25em 0}
  #prices .tier-desc{font-size:.8rem;padding:0;margin:0}
  #prices .tier-desc::before{display:none}
  #prices .ap-tier{display:none}  /* per-card Afterpay line; the "Pay over time" note under the cards stays */
  #prices .note{margin-top:16px}
}

/* --- Styles: merged into Our Artists as a row of chips --- */
.hd-styles{text-align:center;max-width:820px;margin:-12px auto 34px}
.hd-styles .sh-short{margin:0 0 12px}
.hd-styles .style-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.hd-styles .style-grid li{padding:7px 16px;border-radius:999px}
.hd-styles .style-grid li::before{display:none}
.hd-styles .style-grid h3{margin:0;font-size:1.05rem;line-height:1.2}
.hd-styles .style-grid p{display:none}
@media (max-width:639px){.hd-styles{margin:-8px auto 24px}.hd-styles .style-grid li{padding:6px 12px}.hd-styles .style-grid h3{font-size:.95rem}}

/* --- Artists: on phones the work photos become one swipe row --- */
@media (max-width:639px){
  .artist .work-grid{display:flex;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-bottom:6px;contain:paint}
  .artist .work-grid>a{flex:0 0 42%;scroll-snap-align:start}
}

/* --- Visit the Shop: address, hours, directions up front; walk-ins / policy / reviews behind toggles --- */
.hd-info .visit-inner{align-items:start}
.hd-info address{margin-bottom:14px}
.hd-info .hours.card-brass{margin:22px 0 0;padding:26px 24px 18px}
.hd-acc-list{margin:22px 0 0;border-top:1px solid rgba(227,192,136,.28)}
.hd-acc{border-bottom:1px solid rgba(227,192,136,.28);scroll-margin-top:80px}
.hd-acc>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:6px 2px;cursor:pointer;list-style:none;
  font:600 .82rem/1.3 var(--caps);letter-spacing:.16em;text-transform:uppercase;color:var(--cream);-webkit-tap-highlight-color:transparent}
.hd-acc>summary::-webkit-details-marker{display:none}
.hd-acc>summary::after{content:"+";flex:none;font:400 1.3rem/1 var(--body);color:var(--brass)}
.hd-acc[open]>summary::after{content:"\2212"}
.hd-acc>summary:hover,.hd-acc>summary:focus-visible{color:var(--brass)}
.hd-acc-in{padding:2px 2px 20px}
.hd-acc .wrap.hd-acc-in{max-width:none;margin:0;padding:2px 2px 20px}
.hd-acc .sh-short{margin:0 0 14px}
.hd-acc.policy .sh-short{text-align:left;font-size:1.1rem}
.hd-acc.reviews .stars{margin:0 0 4px}
.hd-acc .review-ctas{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}
.hd-acc .steps li{padding:14px 16px 14px 70px}
.hd-acc .steps li::before{left:12px;top:12px;width:42px;height:42px}
.hd-info .visit-near{margin-top:18px}
@media (max-width:639px){
  .hd-info .map{display:none}     /* Get Directions opens the real map; the embedded one is a whole screen on a phone */
  .hd-info .visit-inner{gap:0}
  .hd-info .hours.card-brass{padding:22px 20px 14px}
  .hd-acc .steps li{padding:12px 12px 12px 58px}
  .hd-acc .steps li::before{width:36px;height:36px;left:10px}
  .hd-acc .review-ctas .btn{flex:1 1 100%;text-align:center;justify-content:center}
}
@media (min-width:960px){.hd-info .map{position:sticky;top:96px;min-height:460px}.hd-info .map iframe{min-height:442px}}
#visit::before{display:none}   /* divider ornament above the old "Visit the Shop" block, removed Oct 2026 */
#visit .visit-inner{grid-template-columns:minmax(0,760px);justify-content:center}   /* map column gone: one centered column */
#visit .hd-info-main>.hours.card-brass:first-child{margin-top:0}
/* Phone landing banner: title never clipped. Slightly smaller fluid size so "Halloween Flash" fits on one line from ~340px up;
   narrower phones wrap it to two balanced lines. Subtitle: under 390px "tap for details" gets its own line. */
@media (max-width:600px) and (orientation:portrait){
  h2.hp-t{font-size:clamp(1rem,4.6vw,1.3rem);white-space:normal;text-wrap:balance;overflow-wrap:normal}
  .hp-s{white-space:normal}
  .hp-s1,.hp-s2{white-space:nowrap}
}
@media (max-width:389px) and (orientation:portrait){.hp-s2{display:block}.hp-dot{display:none}}   /* narrow: "tap for details" on its own line, no leading dot */
