/* Official prose: natural wrapping, paragraph spacing, semantic lists. */
.final-copy:not([data-client-copy="riku-message"]):not([data-client-copy="marina-message"]){white-space:normal;line-height:2}
.final-copy p{margin:0}.final-copy p+p{margin-top:1.25em}
.message-profile p+p{margin-top:1em}.message-profile h4{font-size:inherit;margin:1.5em 0 .5em}
.qualification-list,.case-items{padding-left:1.25em;list-style:disc}
.qualification-list li+li,.case-items li+li{margin-top:.5em}
.cases .case-items>li{display:list-item;border:0;padding:0;line-height:2}
.media-items{list-style:none;padding:0;margin:0}.media-items li+li{margin-top:1em}
.provided-visual{margin:28px 0 0}.provided-visual img{display:block;width:100%;height:auto}
.family-visual{max-width:960px;margin-inline:auto}.family-visual a{display:block}
.family-block h3{max-width:100%;text-wrap:pretty}
.lineup-block{margin-top:40px}.lineup-block h3{margin-bottom:16px}
.lineup-descriptions{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:20px}
.lineup-block .lineup-descriptions h4{font-size:17px;margin:0 0 6px}
.lineup-descriptions p{font-size:14px;margin:0;line-height:1.8}
.lineup-thumbnails{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:20px}
.lineup-thumbnails figure{margin:0;min-width:0}.lineup-thumbnails img{width:100%;aspect-ratio:16/9;object-fit:contain;display:block;border-radius:10px;background:#fff}
.lineup-thumbnails figcaption{font-size:13px;margin-top:8px}
.hero__title,.h2,.unit__h,.phead__t,.statement,.bcard__tag{text-wrap:pretty}
@media(max-width:700px){.lineup-thumbnails{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}.lineup-descriptions{grid-template-columns:1fr;gap:16px}.provided-visual{margin-top:20px}.lineup-block{margin-top:32px}}

.family-block h3 .phrase{display:inline-block}

/* Short introductory copy wraps by sentence and complete list item. */
.copy-sentence{display:block}.copy-unit{display:inline-block}.phead__l:has(.copy-sentence){max-width:46em}

.bcard[href$="#contents"] .top-mosaic{inset:0;height:100%!important;aspect-ratio:auto;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr))}.top-mosaic img{object-fit:cover!important;min-height:0}.bcard[href$="#product"] .bcard__bg img{object-position:50% 48%}.bcard[href$="#club"] .bcard__bg img{object-position:50% 40%}

/* Brand typography hero: no photographic imagery. */
.hero--type{position:relative;background:rgb(255,250,245);color:rgb(255,70,15);padding:0;isolation:isolate}
.hero-type__inner{position:relative;z-index:2;padding-top:62px;padding-bottom:170px}
.hero-type__eyebrow{font-family:var(--en);font-size:11px;font-weight:700;letter-spacing:.18em;margin:0 0 30px;color:rgb(60,55,50)}
.hero-type__title{font-size:clamp(56px,7.4vw,112px);font-weight:900;letter-spacing:-.055em;line-height:1.18;margin:0;color:rgb(255,70,15)}
.hero-type__title>span{display:block;width:fit-content;white-space:nowrap}
.hero-type__title>span:nth-child(2){margin-left:1em}.hero-type__title>span:nth-child(3){margin-left:2em}
.hero-type__foot{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-top:36px;color:rgb(60,55,50)}
.hero-type__foot p{font-size:12px;line-height:2;margin:0}.hero-type__scroll{display:flex;align-items:center;gap:20px;font-size:10px;font-weight:700;letter-spacing:.15em;text-decoration:none}.hero-type__scroll span{font-size:26px;color:rgb(255,70,15)}
.hero-type__ribbon{position:absolute;z-index:1;right:0;bottom:-35px;width:100%;height:440px;pointer-events:none}
@media(max-width:700px){.hero-type__inner{padding-top:40px;padding-bottom:125px}.hero-type__eyebrow{font-size:9px;letter-spacing:.1em;margin-bottom:28px}.hero-type__title{font-size:clamp(38px,9.6vw,65px);line-height:1.25}.hero-type__title>span:nth-child(2){margin-left:.3em}.hero-type__title>span:nth-child(3){margin-left:.6em}.hero-type__foot{display:block;margin-top:30px}.hero-type__foot p{font-size:11px;max-width:29em}.hero-type__scroll{margin-top:24px}.hero-type__ribbon{width:160%;max-width:none;height:240px;right:-35%;bottom:-35px}}
.hero-type__foot{justify-content:flex-start;gap:64px}.hero-type__scroll{position:relative;background:rgb(255,250,245);padding:8px 12px;border-radius:24px}

/* Keep the ribbon in its own space: one continuous left-to-right wave. */
.hero-type__ribbon{height:180px;bottom:0;width:100%;right:0;overflow:visible}.hero-type__inner{padding-bottom:210px}
@media(max-width:700px){.hero-type__inner{padding-bottom:140px}.hero-type__ribbon{height:110px;width:220%;right:-55%;bottom:0}}

.bcard[href$="#contents"] .top-mosaic{background:#3c3732;align-content:center;grid-template-rows:repeat(3,auto);gap:0}.bcard[href$="#contents"] .top-mosaic img{height:auto!important;width:100%;aspect-ratio:16/9;object-fit:contain!important;display:block}

.bcard[href$="#contents"] .top-mosaic{grid-template-rows:repeat(3,minmax(0,1fr));padding:12px;box-sizing:border-box;gap:4px}.bcard[href$="#contents"] .top-mosaic img{height:100%!important;min-height:0;aspect-ratio:auto;object-fit:contain!important}

.bcard[href$="#contents"]{background:#3c3732}.bcard[href$="#contents"] .top-mosaic{height:auto!important;bottom:auto;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,auto);padding:16px;gap:5px;background:transparent}.bcard[href$="#contents"] .top-mosaic img{height:auto!important;aspect-ratio:16/9}.bcard[href$="#contents"] .bcard__id{position:relative}

/* Nine complete thumbnails, three by three. */
.bcard[href$="#contents"] .top-mosaic{grid-template-rows:repeat(3,auto);padding:10px;gap:3px}

/* Company values: plain typography and rules. */
.values--editorial{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;width:100%}.values--editorial li{background:none;border-radius:0;padding:24px 0 12px;border-top:1px solid rgb(210,190,185);font-size:clamp(24px,3vw,40px);font-weight:700;letter-spacing:.04em;color:rgb(60,55,50)}
@media(max-width:700px){.values--editorial{gap:16px}.values--editorial li{font-size:22px;padding-top:20px;letter-spacing:0}}

@media(max-width:700px){#marina-message aside{grid-template-columns:repeat(3,minmax(0,1fr))}#marina-message aside .final-photo img{height:160px}}
