/* Reference-led composition. All rules scoped to the home route. */
.reference-home main{max-width:1800px;padding-top:8px}.reference-home .notice{font-size:9px;margin:0 0 8px;opacity:.7}.reference-home .site-header{padding:20px 5%;border-bottom:0;min-height:95px}.reference-home .brand-logo{width:190px;height:52px}.reference-home .desktop-services{gap:30px}.reference-home .header-tools{gap:25px}
.reference-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(210px,.49fr);gap:30px;align-items:center;padding:12px 2.6% 22px;min-height:580px}
.reference-hero:before,.reference-hero:after{content:'+';position:absolute;top:12px;font:23px monospace;color:#333}.reference-hero:before{left:-2.7%}.reference-hero:after{right:-2.7%}
.ref-edge{position:absolute;left:-2.7%;top:95px;bottom:30px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;width:14px}.ref-edge span{writing-mode:vertical-rl;font:11px LuluLatin,monospace;letter-spacing:2px}.ref-edge b{color:var(--pink);margin-top:24px}.ref-edge img{width:14px;height:88px}
.ref-copy h1{font:clamp(33px,3.35vw,61px)/1.55 Lulu,sans-serif;margin:22px 0 20px;letter-spacing:.025em;white-space:nowrap}.ref-copy h1>span{color:var(--pink);font:30px Arial;margin-left:12px}.ref-kicker{font-size:11px;letter-spacing:.09em;margin:0}.ref-lead{font-size:14px;line-height:2.1;letter-spacing:.045em;margin:0 0 24px}.ref-cta{display:flex;justify-content:space-between;align-items:center;width:270px;max-width:100%;border:1px solid var(--pink);border-radius:6px;color:#e00073;text-decoration:none;font-size:13px;font-weight:600;padding:12px 22px}.ref-cta span{font:23px Arial}.ref-cta:hover{background:#fff1f7}
.ref-price{display:flex;align-items:center;gap:20px;border:1px solid #aaa;border-radius:6px;margin-top:27px;padding:13px 16px}.ref-price>div+div{border-left:1px dotted #777;padding-left:18px}.ref-price small{display:block;font-size:10px}.ref-price strong{font:30px LuluLatin,monospace;color:var(--pink);white-space:nowrap}.ref-price em{font:10px Arial;color:#333;margin-left:7px}.ref-price>div>span{font-size:12px;white-space:nowrap}.ref-fine{font-size:10px;line-height:1.9;margin:10px 0 0;color:#555}.ref-fine a{white-space:nowrap}
.ref-product{margin:0;min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.ref-product>img{display:block;width:100%;height:clamp(420px,36vw,640px);object-fit:contain;mix-blend-mode:multiply}.ref-product figcaption{text-align:center;font:10px LuluLatin,Arial;color:#666;margin-top:5px}
.ref-specs{font-size:12px}.ref-ticket{border:1px solid #555;border-radius:9px;padding:17px;display:flex;flex-direction:column;gap:7px;position:relative}.ref-ticket:after{content:'+';position:absolute;right:12px;top:9px;font:18px monospace}.ref-ticket>small{font:11px LuluLatin;color:var(--pink)}.ref-ticket>b{font:32px LuluLatin}.ref-ticket>span{font:10px LuluLatin;white-space:nowrap}.ref-ticket>i{font:21px Arial;color:var(--pink);font-style:normal}.ref-barcode{width:95px;height:12px;background:repeating-linear-gradient(90deg,#111 0 1px,transparent 1px 3px,#111 3px 5px,transparent 5px 6px,#111 6px 7px,transparent 7px 9px)}.ref-specs dl{border-left:1px dotted #777;margin:22px 0 18px;padding-left:14px}.ref-specs dl>div{position:relative;margin:0 0 18px;padding-right:15px}.ref-specs dl>div:after{content:'+';position:absolute;right:0;top:3px;color:#777}.ref-specs dt{font:10px/1.5 Arial;letter-spacing:.04em}.ref-specs dd{margin:5px 0 0;font-size:12px;line-height:1.7}.ref-specs dd small{display:block;font-size:9px;color:#666}.ref-spec-note{border-top:1px dotted #555;padding-top:12px;font:10px LuluLatin}.ref-spec-note:first-letter{color:var(--pink)}
.ref-lineup{border-top:1px solid #aaa;padding:15px 0 20px;position:relative}.ref-lineup-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.ref-lineup-heading h2{font:13px Arial;margin:0}.ref-lineup-heading h2 span{color:var(--pink);font-size:9px;margin-right:10px}.ref-lineup-heading>span{font:10px LuluLatin}.ref-models{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.ref-model{border:1px solid #aaa;border-radius:7px;background:#fff;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;text-align:left;position:relative;cursor:pointer;color:#171717;min-width:0}.ref-model[aria-pressed=true]{border-color:var(--pink);color:#e00073}.ref-model:hover{background:#fff9fc}.ref-model-text{display:flex;flex-direction:column;gap:4px}.ref-model-text b{font-size:15px;font-weight:500}.ref-model-text small{font-size:11px;color:#333}.ref-model-text i{font:22px Arial;font-style:normal;margin-top:8px}.ref-model img{height:112px;width:90px;object-fit:contain;mix-blend-mode:multiply}.ref-plus{position:absolute;top:7px;right:11px;font:17px monospace}.ref-concept-note{font-size:9px;color:#777;margin:9px 0 0}.reference-home .latest-news{margin-top:10px}
@media(min-width:1500px){.reference-hero{gap:38px}.ref-copy h1{font-size:57px}.ref-lead{font-size:16px}}
@media(min-width:701px) and (max-width:1100px){.reference-hero{grid-template-columns:1.1fr 1fr;gap:25px;min-height:0}.ref-copy{grid-column:1;grid-row:1}.ref-copy h1{font-size:clamp(31px,4.3vw,45px)}.ref-product{grid-column:2;grid-row:1}.ref-product>img{height:470px}.ref-specs{grid-column:1/-1;display:grid;grid-template-columns:220px 1fr;gap:25px;align-items:center}.ref-specs dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0}.ref-specs dl>div{margin:0}.ref-spec-note{display:none}.ref-models{gap:10px}.ref-model{padding:12px}.ref-model img{width:68px;height:96px}.ref-model-text b{font-size:13px}.reference-home .desktop-services{display:none}.ref-price{gap:10px;padding:12px}.ref-price strong{font-size:27px}.ref-price>div+div{padding-left:10px}}
@media(max-width:700px){.reference-home .site-header{padding:13px 5%;min-height:70px}.reference-home .brand-logo{width:135px;height:38px}.reference-home .header-tools{gap:15px}.reference-home main{padding-top:4px}.reference-hero{display:flex;flex-direction:column;gap:0;padding:18px 0 23px;min-height:0}.reference-hero:before,.reference-hero:after,.ref-edge{display:none}.ref-copy{display:contents}.ref-kicker{order:0;font-size:10px;align-self:flex-start}.ref-copy h1{order:1;font-size:clamp(29px,8vw,48px);line-height:1.55;align-self:flex-start;margin:18px 0 8px}.ref-copy h1>span{font-size:24px}.ref-product{order:2;align-self:stretch}.ref-product>img{height:360px}.ref-product figcaption{margin:0}.ref-lead{order:3;align-self:flex-start;font-size:13px;margin:21px 0 16px}.ref-cta{order:4;width:100%}.ref-price{order:5;width:100%;margin-top:20px;justify-content:space-between}.ref-price strong{font-size:32px}.ref-fine{order:6}.ref-specs{order:7;width:100%;margin-top:25px;display:grid;grid-template-columns:1fr 1.1fr;gap:16px;align-items:start}.ref-ticket{padding:12px;gap:9px}.ref-ticket>b{font-size:27px}.ref-ticket>span{white-space:normal;font-size:8px;line-height:1.7}.ref-specs dl{margin:0;padding-left:12px}.ref-specs dl>div{margin-bottom:12px}.ref-specs dd{font-size:11px}.ref-spec-note{display:none}.ref-models{grid-template-columns:1fr 1fr;gap:12px}.ref-model{padding:13px 10px;min-height:129px}.ref-model img{width:66px;height:95px}.ref-model-text b{font-size:13px}.ref-model-text small{font-size:10px}.ref-lineup-heading h2{font-size:12px}.ref-lineup-heading>span{font-size:9px}.ref-concept-note{font-size:9px;line-height:1.7}.reference-home .notice{font-size:8px}}
@media(prefers-reduced-motion:no-preference){.ref-model,.ref-cta{transition:background .18s,border-color .18s}}

/* Approved four-variant artwork, displayed directly without regenerating it. */
.ref-booth-sprite{display:block;background-image:url("assets/booth-lurex-four-20261011-fast.webp");background-size:200% 200%;background-repeat:no-repeat;aspect-ratio:1105/1424;flex-shrink:0}
.ref-booth-sprite[data-variant="0"]{background-position:0 0}
.ref-booth-sprite[data-variant="1"]{background-position:100% 0}
.ref-booth-sprite[data-variant="2"]{background-position:0 100%}
.ref-booth-sprite[data-variant="3"]{background-position:100% 100%}
.ref-booth-stage{height:clamp(420px,36vw,640px);display:flex;align-items:center;justify-content:center}
.ref-booth-stage .ref-booth-sprite{width:100%;max-height:100%;max-width:calc(640px * 1105 / 1424);height:auto}
.ref-model-preview{width:87px}
@media(min-width:701px) and (max-width:1100px){.ref-booth-stage{height:470px}.ref-model-preview{width:68px}}
@media(max-width:700px){.ref-booth-stage{height:360px}.ref-booth-stage .ref-booth-sprite{width:279px;max-width:100%}.ref-model-preview{width:66px}}

.ref-copy h1>.ref-dot-heart,.ref-ticket>.ref-dot-heart,.ref-model-text>.ref-dot-heart{display:inline-block;width:22px;height:19px;background:url("assets/lulu-dot-heart.svg") center/contain no-repeat;flex-shrink:0;vertical-align:middle;font-size:0}
.ref-copy h1>.ref-dot-heart{width:28px;height:25px}

.ref-mobile-picker{display:none}
@media(max-width:700px){
.reference-hero{padding-top:10px}
.ref-kicker{font-size:9px}
.ref-copy h1{font-size:clamp(22px,5.8vw,32px);line-height:1.5;margin:12px 0 8px;white-space:normal}
.ref-copy h1 br:first-of-type{display:none}
.ref-copy h1>.ref-dot-heart{width:19px;height:17px;margin-left:7px}
.ref-booth-stage{height:clamp(210px,34svh,310px)}
.ref-booth-stage .ref-booth-sprite{height:100%;width:auto;max-width:100%;aspect-ratio:1105/1424}
.ref-product figcaption{display:none}
.ref-mobile-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:10px 0 0}
.ref-mobile-picker button{display:flex;align-items:center;justify-content:center;gap:5px;min-height:48px;padding:5px 2px;border:1px solid #ccc;border-radius:6px;background:white;color:#222;font-size:10px;cursor:pointer}
.ref-mobile-picker button[aria-pressed=true]{border-color:var(--pink);background:#fff2f8;color:#d00068}
.ref-mobile-picker small{display:block;font-size:9px;margin-top:3px}
.ref-swatch{width:11px;height:11px;border:1px solid #aaa;background:#fff;border-radius:50%;flex-shrink:0}.ref-swatch.is-black{background:#171717;border-color:#171717}
.reference-home .ref-lineup{display:none}
.ref-lead{margin-top:23px;font-size:12px;line-height:1.9}
.ref-specs{margin-top:25px}
}
@media(max-width:700px){
.reference-home .site-header{flex-wrap:nowrap;min-height:62px;padding:10px 5%;gap:8px}
.reference-home .brand-logo{width:100px;height:32px}
.reference-home .header-tools{gap:10px;font-size:11px}
.reference-home .header-tools a,.reference-home .header-tools button{font-size:11px}
.reference-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);column-gap:10px;row-gap:10px;align-items:start}
.ref-kicker{grid-column:1/-1;grid-row:1;margin:0}
.ref-copy h1{grid-column:1;grid-row:2;font-size:clamp(17px,4.4vw,25px);line-height:1.7;margin:8px 0 0;letter-spacing:0;align-self:end}
.ref-copy h1 br:first-of-type{display:block}
.ref-copy h1>.ref-dot-heart{width:14px;height:13px;margin-left:3px}
.ref-lead{grid-column:1;grid-row:3;font-size:11px;line-height:1.9;margin:0;letter-spacing:0;align-self:start}
.ref-lead br{display:none}
.ref-product{display:contents}
.ref-booth-stage{grid-column:2;grid-row:2/4;height:clamp(240px,36svh,340px);align-self:center;overflow:hidden}
.ref-booth-stage .ref-booth-sprite{height:auto;width:100%;max-height:none}
.ref-mobile-picker{grid-column:1/-1;grid-row:4;margin:0}
.ref-cta{grid-column:1/-1;grid-row:5;margin-top:10px}
.ref-price{grid-column:1/-1;grid-row:6;min-width:0;padding:12px;gap:8px;margin-top:8px}
.ref-price strong{font-size:26px}.ref-price>div+div{padding-left:8px}.ref-price>div>span{font-size:11px}
.ref-fine{grid-column:1/-1;grid-row:7}
.ref-specs{grid-column:1/-1;grid-row:8}
}

.ref-model-text b{font-family:LuluLatin,monospace;font-size:18px}
.ref-model-text small{font-family:LuluLatin,monospace;letter-spacing:.06em}
@media(max-width:700px){
.ref-mobile-picker{gap:0;border-top:1px dotted #ff80bc;border-bottom:1px dotted #ff80bc}
.ref-mobile-picker button{position:relative;min-height:58px;border:0;border-radius:0;background:transparent;gap:6px;padding:8px 3px}
.ref-mobile-picker button+button{border-left:1px dotted #ffc5e1}
.ref-mobile-picker button[aria-pressed=true]{background:#fff0f7;color:#e00073}
.ref-mobile-picker button[aria-pressed=true]:after{content:'';position:absolute;bottom:0;left:14%;right:14%;height:2px;background:var(--pink)}
.ref-picker-label{font:14px/1.25 LuluLatin,monospace;letter-spacing:.025em}
.ref-mobile-picker small{font:10px/1.3 LuluLatin,monospace;letter-spacing:.055em;margin-top:5px}
.ref-swatch{width:8px;height:8px}
}

@media(max-width:700px){
.ref-mobile-picker button{flex-direction:column;gap:3px;padding:5px 2px 7px;min-height:88px}
.ref-picker-thumb{width:37px;height:48px;mix-blend-mode:multiply}
.ref-picker-label{font-size:12px;line-height:1.1}
.ref-mobile-picker small{font-size:8px;line-height:1.1;margin-top:3px}
}

/* Fit the complete product artwork inside its stage. */
.ref-booth-stage{--booth-stage-height:clamp(420px,36vw,640px);height:var(--booth-stage-height);align-items:flex-end;padding-bottom:8px;box-sizing:border-box;overflow:hidden}
.ref-booth-stage .ref-booth-sprite{height:auto;max-height:none;width:100%;max-width:calc((var(--booth-stage-height) - 8px) * 1105 / 1424);aspect-ratio:1105/1424}
@media(min-width:701px) and (max-width:1100px){.ref-booth-stage{--booth-stage-height:470px}}
@media(max-width:700px){
.ref-booth-stage{--booth-stage-height:clamp(240px,36svh,340px)}
.ref-booth-stage .ref-booth-sprite{max-width:calc((var(--booth-stage-height) - 8px) * 1105 / 1424)}
.ref-picker-thumb{height:auto;aspect-ratio:1105/1424}
}

.header-brand{display:flex;align-items:center;gap:16px;text-decoration:none;color:inherit;flex-shrink:0}
.header-tagline{font:10px/1.7 Arial,sans-serif;letter-spacing:.02em;white-space:nowrap}
@media(min-width:1101px) and (max-width:1300px){.reference-home .desktop-services{gap:14px}.reference-home .header-tools{gap:14px}.reference-home .brand-logo{width:150px}}
@media(max-width:700px){
.reference-home .site-header,.site-header{flex-wrap:wrap;row-gap:5px}
.header-brand{gap:12px}.header-tagline{font-size:9px;line-height:1.6}
.reference-home .header-tools,.header-tools{margin-left:auto}
.reference-home .reference-hero{row-gap:10px}
.ref-copy h1{grid-row:1}.ref-lead{grid-row:2}.ref-booth-stage{grid-row:1/3}
.ref-mobile-picker{grid-row:3}.ref-cta{grid-row:4}.ref-price{grid-row:5}.ref-fine{grid-row:6}.ref-specs{grid-row:7}
}

/* Responsive balance: retain adopted artwork and readable card widths. */
@media(min-width:701px) and (max-width:900px){
 .ref-models{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ref-booth-stage{--booth-stage-height:380px}
 .ref-copy h1{font-size:31px}
 .reference-hero{gap:22px}
 .deliveryFour{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
}
.collab-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}
.collab-heading h2{margin:12px 0 0}.collab-all{font-size:13px;text-underline-offset:5px;white-space:nowrap}
.collab-case-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;margin-top:24px}
.collab-case{display:flex;flex-direction:column;min-width:0;text-decoration:none;border-top:1px dotted #ff80bc;padding:20px 0;gap:8px}
.collab-case-image{height:240px;background:#fff9fc;display:flex;align-items:center;justify-content:center;padding:16px}
.collab-case-image img{max-width:100%;height:100%;object-fit:contain;display:block}
.collab-case h3{font-size:22px;margin:8px 0 0;line-height:1.5}.collab-case p{font-size:12px;line-height:1.7;margin:0}.collab-case>span{font-size:12px;color:#d00070;margin-top:auto;padding-top:8px}
@media(min-width:701px) and (max-width:1000px){.collab-case-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.collab-case-image{height:220px}}
@media(max-width:700px){
 .reference-home .section{padding:32px 0}
 .reference-home .section h2{font-size:clamp(24px,6vw,32px);line-height:1.6}
 .collab-heading{gap:12px}.collab-all{font-size:12px}
 .collab-case-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
 .collab-case{padding:14px 0;gap:6px}.collab-case-image{height:190px;padding:12px}
 .collab-case h3{font-size:19px}.collab-case p{font-size:11px}.collab-case>span{font-size:11px}
}
@media(max-width:360px){.collab-case-image{height:160px;padding:8px}}

/* Floating service selector: brand lettering, compact footprint. */
.mobile-dock:not(.context-dock){left:50%;right:auto;bottom:calc(16px + env(safe-area-inset-bottom));transform:translateX(-50%);width:min(760px,calc(100% - 32px));padding:7px;gap:0;background:#ff008b;border:1px solid #ff008b;border-radius:14px;box-shadow:0 8px 28px #67003420;overflow:hidden;grid-template-columns:repeat(3,minmax(0,1fr))}
.mobile-dock:not(.context-dock) .dock-label{font:9px/1.3 LuluLatin,monospace;letter-spacing:.16em;padding:3px 0 6px;color:#fff;grid-column:1/-1;text-align:center}
.mobile-dock:not(.context-dock) a{display:flex;flex-direction:column;gap:5px;min-height:58px;padding:8px 12px;color:#fff;line-height:1.2;font-weight:400;transition:background .18s}
.mobile-dock:not(.context-dock) a+a{border-left:1px dotted #ffffff80}
.mobile-dock:not(.context-dock) a:hover{background:#ffffff22}
.dock-en{font:22px/1.15 LuluLatin,monospace;letter-spacing:.035em}
.dock-ja{font:11px/1.4 Arial,sans-serif;white-space:nowrap}.dock-ja i{font-style:normal;margin-left:9px}
.mobile-dock:not(.context-dock) a:focus-visible{outline:2px solid white;outline-offset:-3px}
.has-dock{padding-bottom:calc(122px + env(safe-area-inset-bottom))}
@media(max-width:700px){
.mobile-dock:not(.context-dock){width:calc(100% - 20px);bottom:calc(10px + env(safe-area-inset-bottom));border-radius:11px;padding:5px}
.mobile-dock:not(.context-dock) .dock-label{font-size:8px;padding:2px 0 4px}
.mobile-dock:not(.context-dock) a{padding:7px 3px;min-height:53px;gap:4px}
.dock-en{font-size:17px}.dock-ja{font-size:9px}.dock-ja i{margin-left:3px}
}
@media(prefers-reduced-motion:reduce){.mobile-dock:not(.context-dock) a{transition:none}}

/* A single heart closes the headline in place of punctuation. */
.ref-copy h1>.ref-dot-heart{font-size:inherit;width:.52em;height:.48em;margin-left:.12em;vertical-align:baseline}

/* Give the product more room and keep the price panel compact. */
@media(min-width:1101px){
 .reference-hero{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(210px,.49fr);gap:26px}
 .ref-booth-stage{--booth-stage-height:clamp(460px,42vw,700px)}
}
@media(min-width:701px){
 .ref-price{width:fit-content;max-width:100%;padding:9px 12px;gap:14px;margin-top:22px}
 .ref-price>div+div{padding-left:12px}
 .ref-price strong{font-size:27px}
 .ref-price>div>span{font-size:11px}
}
@media(min-width:701px) and (max-width:1100px){
 .reference-hero{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}
 .ref-booth-stage{--booth-stage-height:clamp(400px,46vw,500px)}
 .ref-price{gap:10px;padding:9px 10px}.ref-price strong{font-size:25px}
}

.ref-specs .ref-color-name{font:20px/1.35 LuluLatin,monospace;color:#df0079;display:block;margin:6px 0 3px}.ref-specs #ref-model-label small{font-size:11px;color:#555}

@media(min-width:1101px){
 .reference-hero{grid-template-columns:minmax(0,.98fr) minmax(0,1.25fr) minmax(210px,.49fr);gap:22px;padding-inline:1.4%}
 .ref-booth-stage{--booth-stage-height:clamp(490px,46vw,760px)}
}
@media(min-width:701px) and (max-width:1100px){
 .reference-hero{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}
 .ref-booth-stage{--booth-stage-height:clamp(420px,50vw,540px)}
}
