/* Three explicit compositions: wide / medium / mobile. */
.landing-hero .landing-cta{display:none}
.quick-entry{display:none}
.site-header{border-bottom:1px dotted var(--pink);background:#fff}
.landing-hero{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) minmax(260px,.7fr);gap:28px;min-height:0;align-items:center;padding:35px 0 45px}
.landing-copy{display:flex;flex-direction:column;min-width:0}.landing-copy h1{font-size:clamp(30px,2.7vw,52px);line-height:1.6;margin:20px 0}.landing-copy .landing-fine{margin-bottom:0}.landing-product{margin:0;min-width:0}.landing-product img{width:100%;height:auto;max-height:650px;object-fit:contain}
.landing-hero>.productTicket{box-sizing:border-box;width:100%;margin:0;padding:20px;gap:0;border:1px solid #f1a5cf;border-radius:9px;background:white;min-width:0}
.landing-hero>.productTicket .ticketBrandRow{flex-wrap:wrap;gap:10px}.landing-hero>.productTicket .ticketSpecs{grid-template-columns:1fr;gap:18px}.landing-hero>.productTicket .ticketSpecs>div:last-child{grid-column:auto;grid-template-columns:1fr;gap:5px}.landing-hero>.productTicket .ticketBarcode{display:block;width:86px;height:15px;flex-shrink:0}.ticketBottom{flex-wrap:wrap}
@media(min-width:701px) and (max-width:1279px){
.landing-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:1fr auto;gap:20px 40px;align-items:stretch}
.landing-copy{grid-column:1;grid-row:1/3}.landing-copy h1{font-size:clamp(30px,3.7vw,44px)}.landing-copy .landing-cta{margin-top:auto}.landing-copy .landing-lead{margin-bottom:24px}.landing-product{grid-column:2;grid-row:1;align-self:center}.landing-product img{height:clamp(300px,32vw,420px);max-height:none}
.landing-hero>.productTicket{grid-column:2;grid-row:2;padding:16px}.landing-hero>.productTicket .ticketSpecs{grid-template-columns:1.6fr 1fr;gap:12px}.landing-hero>.productTicket .ticketSpecs>div:last-child{grid-column:1/-1}.ticketBrandRow>b{font-size:25px}.ticketSpecs dt{font-size:11px}.specDimensions b,.specWeight b{font-size:25px}
}
@media(max-width:700px){
.landing-hero{display:flex;flex-direction:column;gap:0;padding:12px 0 28px;align-items:stretch}.landing-copy{display:contents}.landing-copy>.kicker{order:0}.landing-copy h1{order:1;font-size:clamp(27px,7.5vw,42px);margin:12px 0}.landing-product{order:2}.landing-product img{height:310px;max-height:none}.landing-hero>.productTicket{order:3;margin:12px auto 24px;max-width:420px;padding:16px}.landing-lead{order:4}.landing-cta{order:5}.landing-price{order:6}.landing-fine{order:7}.landing-hero>.productTicket .ticketSpecs{grid-template-columns:1.65fr 1fr;gap:12px}.landing-hero>.productTicket .ticketSpecs>div:last-child{grid-column:1/-1}.hero-edge{display:none}
}
/* Keep the service dock available at every viewport width. */
.mobile-dock{display:grid;position:fixed;z-index:30;bottom:0;left:0;right:0;grid-template-columns:repeat(3,1fr);gap:0;background:var(--pink);color:white;border-top:1px solid #ed007f;padding:0 max(12px,calc((100vw - 1100px)/2)) env(safe-area-inset-bottom);box-shadow:0 -3px 16px #3000180a}
.mobile-dock .dock-label{grid-column:1/-1;text-align:center;color:white;font-size:11px;line-height:1.4;padding:7px 0 2px;letter-spacing:.05em}
.mobile-dock a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:8px 12px;text-align:center;text-decoration:none;font-size:14px;font-weight:600;color:white;line-height:1.5}.mobile-dock a+a{border-left:1px solid #ffffff55}.mobile-dock a:hover{background:#df0079}.mobile-dock.context-dock{grid-template-columns:1fr 1fr}.has-dock{padding-bottom:calc(88px + env(safe-area-inset-bottom))}
@media(max-width:700px){.mobile-dock{padding-left:8px;padding-right:8px}.mobile-dock a{font-size:11px;padding:8px 4px}.mobile-dock .dock-label{font-size:10px}}

/* Original public-site registration marks and edge label. */
.landing-hero::before,.landing-hero::after{content:'+';position:absolute;top:4px;color:#0008;font:22px monospace;pointer-events:none}
.landing-hero::before{left:-3.8%}.landing-hero::after{right:-3.8%}
.landing-hero .hero-edge{display:flex;position:absolute;left:-3.8%;top:140px;bottom:30px;width:16px;writing-mode:horizontal-tb;flex-direction:column;align-items:center;justify-content:space-between;color:#111;pointer-events:none}
.hero-edge>span{writing-mode:vertical-rl;font:9px LuluLatin,monospace;letter-spacing:.18em}
.hero-edge>span::after{content:'●';color:var(--pink);margin-top:18px;font:12px Arial}
.landing-hero .hero-edge>i{display:block;width:16px;height:106px;border-radius:0;margin:20px 0 0;background:url(assets/lulu-barcode-vertical.svg) center/100% 100% no-repeat}
.landing-product{position:relative}.landing-product::after{content:'+';position:absolute;top:30px;right:4px;font:24px monospace;color:#0008;pointer-events:none}
.landing-hero>.productTicket::before,.landing-hero>.productTicket::after{display:block;content:'+';position:absolute;right:8px;font:15px monospace;color:#0008;pointer-events:none}
.landing-hero>.productTicket::before{top:6px}.landing-hero>.productTicket::after{bottom:5px}
.landing-hero>.productTicket .ticketBrandRow{padding-right:10px}.landing-hero>.productTicket .ticketBottom{padding-right:10px}
@media(max-width:700px){.landing-hero .hero-edge,.landing-hero::before,.landing-hero::after,.landing-product::after{display:none}}
/* Give the booth more presence, keeping the specification label secondary. */
.landing-hero>.productTicket{padding:14px 16px}
.landing-hero>.productTicket .ticketBrandRow{padding-bottom:11px}
.landing-hero>.productTicket .ticketBrandRow>b{font-size:25px}
.landing-hero>.productTicket .ticketEyebrow{font-size:9px}
.landing-hero>.productTicket .ticketSpecs{padding:12px 0;gap:12px}
.landing-hero>.productTicket .specDimensions b,.landing-hero>.productTicket .specWeight b{font-size:25px}
.landing-hero>.productTicket .ticketSpecs>div:last-child{padding-top:10px}
.landing-hero>.productTicket .ticketBottom{padding-top:9px}
@media(min-width:1280px){.landing-hero{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) minmax(240px,.6fr);gap:24px}.landing-product img{max-height:700px}}
@media(min-width:701px) and (max-width:1279px){.landing-product img{height:clamp(330px,36vw,465px)}.landing-hero>.productTicket{width:92%;justify-self:center}}
@media(max-width:700px){.landing-product img{height:350px}.landing-hero>.productTicket{width:94%;padding:13px 14px;margin-top:8px}.landing-hero>.productTicket .ticketSpecs{gap:10px}.landing-hero>.productTicket .specDimensions b,.landing-hero>.productTicket .specWeight b{font-size:24px}}
/* Prioritise the booth; service actions stay in the persistent dock. */
@media(min-width:1280px){.landing-hero{grid-template-columns:minmax(0,.88fr) minmax(0,1.42fr) minmax(235px,.58fr);gap:20px}.landing-product img{max-height:770px}.landing-copy h1{font-size:clamp(30px,2.6vw,50px)}}
@media(min-width:701px) and (max-width:1279px){.landing-product img{height:clamp(360px,40vw,510px)}.landing-copy .landing-price{margin-top:auto;padding-top:24px}}
@media(max-width:700px){.landing-product img{height:390px}.landing-copy .landing-price{margin-top:12px}}
