/* Approved portfolio 01 + cinematic brand page 04. Scoped to the new brand templates. */
.r15-page{--r15-ink:#142036;--r15-muted:#647080;--r15-brand:#294967;--r15-wash:#edf2f5;min-width:0;overflow:clip}.r15-page *{box-sizing:border-box}.r15-page [hidden]{display:none!important}.r15-page h1,.r15-page h2,.r15-page h3,.r15-page p{margin:0}.r15-page p{line-height:1.9}.r15-page a{color:inherit;text-decoration:none}.r15-page button{font:inherit;cursor:pointer}.r15-page button:focus-visible,.r15-page a:focus-visible,.r15-product-rail:focus-visible{outline:2px solid #bd9a49;outline-offset:5px}.r15-page img{max-width:100%;display:block}.r15-space{padding:80px max(6%,calc((100% - 1220px)/2))}.r15-link{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:44px;padding:9px 0;border-bottom:1px solid currentColor!important;font-size:14px;font-weight:500;line-height:1.6;max-width:100%;width:fit-content}.r15-arrow{display:inline-block;width:21px;height:21px;flex:0 0 21px;transition:transform .25s}.r15-link:hover .r15-arrow{transform:translateX(5px)}.r15-logo{object-fit:contain;object-position:center;width:100%;height:auto}.r15-category{display:block;font-size:12px;letter-spacing:.08em;font-weight:500}.r15-page a,.r15-page h1,.r15-page h2,.r15-page h3,.r15-page p{overflow-wrap:anywhere}
/* Logo and brand color fill each card; the collection stays in a two-column grid. */
.r15-portfolio{background:#fff;color:var(--r15-ink)}.r15-overview-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:65px;padding-bottom:45px}.r15-overview-intro h1:not(.r15-overview-title){font-size:18px;font-weight:500;letter-spacing:.12em;line-height:1.5}.r15-overview-intro :is(h2,.r15-overview-title){font-size:clamp(34px,3.4vw,54px);line-height:1.5;font-weight:500;margin-top:22px}.r15-overview-intro>p{max-width:350px;font-size:15px;color:var(--r15-muted)}.r15-filter{display:flex;flex-wrap:wrap;gap:10px;padding:0 max(6%,calc((100% - 1220px)/2)) 45px}.r15-filter button{background:#fff;color:var(--r15-ink);border:1px solid #d7dde1;border-radius:100px;padding:11px 22px;font-size:12px;line-height:1.6;min-height:42px}.r15-filter button[aria-pressed=true]{color:white;background:var(--r15-ink);border-color:var(--r15-ink)}.r15-brand-collection{width:100%}.r15-brand-row{width:100%;min-width:0;border-bottom:1px solid #e0e4e7;margin:0}.r15-logo-stage{position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-height:350px;height:clamp(350px,37vw,620px);padding:65px 9%;background:#f0f5f7;overflow:hidden;isolation:isolate}.r15-logo-stage .r15-logo{width:min(100%,1080px);height:100%;max-height:330px;object-fit:contain;transition:transform 1.1s cubic-bezier(.22,.61,.36,1);position:relative;z-index:1}.r15-logo-stage:hover .r15-logo{transform:scale(1.025)}.r15-brand-ebmonitor>.r15-logo-stage{background:#eaf2f6}.r15-brand-bowil>.r15-logo-stage{background:#f1efea}.r15-brand-coresence>.r15-logo-stage{background:#182456}.r15-brand-vigenent>.r15-logo-stage{background:#bc302a}.r15-brand-vigenent>.r15-logo-stage .r15-logo{filter:brightness(0) invert(1)}.r15-brand-nikotta>.r15-logo-stage{background:#ee8f98}.r15-brand-nikotta>.r15-logo-stage .r15-logo{filter:brightness(.34)}.r15-stage-line{position:absolute;inset:auto 6% 28px;height:1px;background:currentColor;opacity:.12;transform-origin:left}.r15-brand-vigenent .r15-stage-line,.r15-brand-coresence .r15-stage-line{color:white}.r15-portfolio-caption{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) auto;gap:40px;align-items:center;max-width:1440px;padding:42px 6% 48px;margin:auto}.r15-portfolio-caption h2{font-size:31px;font-family:Georgia,"Noto Serif TC",serif;font-weight:400;line-height:1.3;margin-top:14px;letter-spacing:.02em}.r15-portfolio-caption .r15-category{color:#6e7784}.r15-portfolio-caption>p{color:var(--r15-muted);font-size:15px;max-width:480px}.r15-portfolio-caption .r15-link{white-space:nowrap}.r15-portfolio .page-cta{margin-top:0}
/* Cinematic inner pages preserve the group header and the approved sitemap bar. */
.r15-cinema{background:#101d2c;color:#fff}.r15-cinema-hero{position:relative;min-height:min(760px,85svh);padding:80px max(7%,calc((100% - 1220px)/2));isolation:isolate;display:flex;align-items:center}.r15-art{position:relative;isolation:isolate;overflow:hidden;background:var(--r15-wash);min-height:300px;color:var(--r15-brand)}.r15-art-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3}.r15-art-light{position:absolute;inset:0;background:linear-gradient(115deg,transparent 20%,#ffffff50 50%,transparent 85%);z-index:-1;pointer-events:none}.r15-art-orbit{position:absolute;inset:15% -5% 0 25%;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--r15-brand) 27%,transparent);border-radius:50%;z-index:-2;transform:rotate(-20deg) scaleY(.72);pointer-events:none}.r15-paw{position:absolute;top:20%;left:35%;height:60%;width:50%;color:var(--r15-brand);opacity:.25;transform:rotate(-15deg)}.r15-brand-bowil .r15-art-image{filter:grayscale(1)}.r15-brand-vigenent .r15-art{background:#bc302a}.r15-brand-vigenent .r15-art-image{opacity:.16;mix-blend-mode:luminosity}.r15-brand-nikotta .r15-art{background:#ee8f98}.r15-cinema-hero>.r15-art{position:absolute;inset:0;height:100%;opacity:.4;z-index:-3}.r15-cinema-shade{position:absolute;inset:0;background:linear-gradient(90deg,#101d2cf0 0%,#101d2cba 43%,#101d2c2b 100%);z-index:-2}.r15-hero-copy{max-width:930px;width:100%;position:relative;z-index:1}.r15-hero-copy>.r15-logo{width:190px;height:78px;background:#f7f6f0;padding:14px;margin-bottom:45px;object-position:center}.r15-heading h1{font-family:Georgia,"Noto Serif TC",serif;font-size:clamp(50px,6.8vw,100px);font-weight:400;line-height:1.15;letter-spacing:.015em;color:#fff}.r15-heading h2{font-size:clamp(25px,2.7vw,39px);font-weight:400;line-height:1.65;max-width:760px;margin-top:30px;color:#fff}.r15-hero-copy>.r15-link{margin-top:32px;color:#e9d9a8}.r15-scroll-line{height:75px;width:1px;position:absolute;bottom:0;right:8%;background:linear-gradient(transparent,#dec995);transform-origin:top}.r15-motion-toggle{position:absolute;bottom:25px;right:max(12%,calc((100% - 1180px)/2));z-index:3;border:1px solid #ffffff35;background:#101d2c50;color:#e4e8ed;border-radius:100px;padding:8px 15px;font-size:11px;min-height:36px}.r15-motion-toggle:hover{background:#213047}.r15-manifesto{padding-top:115px;padding-bottom:115px}.r15-manifesto .r15-category{color:#cdbb8a;margin-bottom:35px}.r15-manifesto h2{max-width:1100px;font-size:clamp(35px,4.2vw,65px);font-weight:400;line-height:1.65;letter-spacing:.02em}.r15-manifesto>p{max-width:750px;font-size:16px;color:#c2cbd5;margin-top:37px}.r15-interlude{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);background:var(--r15-wash);color:#152134;align-items:stretch}.r15-interlude-visual{position:relative;min-height:470px;isolation:isolate}.r15-interlude-visual>.r15-art{position:absolute;inset:0;height:100%;min-height:100%;opacity:.45;z-index:-1}.r15-interlude-logo{height:100%;display:flex;align-items:center;justify-content:center;padding:65px}.r15-interlude-logo .r15-logo{max-width:510px;max-height:220px;object-fit:contain}.r15-interlude-copy{display:flex;align-items:center;padding:55px 12%}.r15-interlude-copy p{font-size:clamp(28px,2.7vw,39px);line-height:1.7;font-weight:400}.r15-brand-vigenent .r15-interlude-visual{background:#bc302a}.r15-brand-vigenent .r15-interlude-logo .r15-logo{filter:brightness(0) invert(1)}.r15-brand-nikotta .r15-interlude-visual{background:#ee8f98}.r15-brand-nikotta .r15-interlude-logo .r15-logo{filter:brightness(.34)}.r15-products{padding-top:85px;padding-bottom:85px}.r15-section-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:35px}.r15-section-head h2{font-size:32px;font-weight:400;line-height:1.4}.r15-section-head p{font-size:14px;color:#b9c4d0;margin-top:16px}.r15-rail-controls{display:flex;gap:10px;flex-shrink:0}.r15-rail-controls button{border:1px solid #546577;background:transparent;color:#daca9a;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;padding:0}.r15-rail-controls button:first-child svg{transform:rotate(180deg)}.r15-rail-controls svg{width:20px;height:20px}.r15-rail-controls button:disabled{opacity:.3;cursor:default}.r15-product-rail{display:flex;gap:23px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:0 1px 22px;scrollbar-color:#c7b78c #22354a;scrollbar-width:thin}.r15-product-card{flex:0 0 calc((100% - 46px)/3);min-width:270px;scroll-snap-align:start;padding:38px 30px;background:#1c2b3c;border:1px solid #405161;min-height:280px}.r15-product-symbol{display:flex;align-items:center;justify-content:space-between;color:#d3bf8c;margin-bottom:35px}.r15-product-symbol svg{width:42px;height:42px}.r15-product-symbol>span{font-size:12px;letter-spacing:.1em}.r15-product-card h3{font-size:21px;font-weight:500;line-height:1.55;color:white}.r15-product-card p{font-size:14px;color:#c2ccd6;margin-top:18px}.r15-product-note{font-size:12px;color:#a2afbd;max-width:850px;margin-top:23px!important}.r15-brand-ending{display:flex;justify-content:space-between;align-items:end;gap:40px;background:var(--r15-wash);color:#162137}.r15-brand-ending>div{min-width:0}.r15-brand-ending .r15-logo{width:200px;height:70px;margin-bottom:28px;object-position:left center}.r15-brand-ending h2{font-size:32px;font-weight:400;line-height:1.5;color:inherit}.r15-brand-ending .r15-link{margin-top:15px}.r15-other-brands{display:flex;gap:25px;align-items:center;flex-wrap:wrap;padding-top:35px;padding-bottom:35px;border-top:1px solid #394754;font-size:12px;color:#e0e5eb}.r15-other-brands>span{margin-right:auto;color:#aebbc8}.r15-other-brands>a{display:flex;align-items:center;gap:13px;min-height:40px;border-bottom:1px solid #405060;padding:8px 0}.r15-other-brands .r15-arrow{width:16px;height:16px;flex-basis:16px}
/* Restrained animation, with visible content as the default and an explicit pause control. */
@keyframes r15-light{0%,100%{opacity:.35;transform:translateX(-10%)}50%{opacity:.8;transform:translateX(10%)}}@keyframes r15-orbit{from{transform:rotate(-16deg) scaleY(.75)}to{transform:rotate(16deg) scaleY(.75)}}
.r15-page[data-brand-motion=on] .r15-art-light{animation:r15-light 12s ease-in-out infinite}.r15-page[data-brand-motion=on] .r15-art-orbit{animation:r15-orbit 16s ease-in-out infinite alternate}.r15-page[data-brand-motion=off] .r15-art-light,.r15-page[data-brand-motion=off] .r15-art-orbit{animation-play-state:paused}.r15-page[data-brand-motion=off] .r15-logo{transition:none}.r15-page[data-document-hidden=true] .r15-art-light,.r15-page[data-document-hidden=true] .r15-art-orbit{animation-play-state:paused}
/* Lighten the homepage photograph's old dark overlay without washing out the image. */
.hero .hero-photo::after{background:linear-gradient(90deg,rgba(10,26,57,.16),rgba(10,26,57,0) 35%),linear-gradient(0deg,rgba(10,26,57,.09),transparent 38%)}.hero .hero-overlay-label{background:rgba(10,26,57,.68);padding:8px 12px;max-width:calc(100% - 50px);line-height:1.5}.hero .hero-frame{border-color:rgba(255,255,255,.64)}
@media(min-width:1800px){.r15-logo-stage .r15-logo{max-height:360px;width:min(80%,1250px)}}
@media(max-width:950px){.r15-overview-intro{gap:35px}.r15-overview-intro>p{max-width:270px}.r15-portfolio-caption{gap:26px;grid-template-columns:1fr 1fr}.r15-portfolio-caption>.r15-link{grid-column:2;justify-self:start;margin-top:-10px}.r15-portfolio-caption h2{font-size:28px}.r15-cinema-hero{min-height:640px}.r15-interlude-visual{min-height:400px}.r15-interlude-logo{padding:40px}.r15-product-card{flex-basis:calc((100% - 23px)/2)}.r15-interlude-copy{padding:42px 10%}.r15-heading h1{font-size:70px}.r15-manifesto h2{font-size:45px}}
@media(max-width:640px){.r15-space{padding:48px 7%}.r15-overview-intro{display:block;padding-top:47px;padding-bottom:27px}.r15-overview-intro h1:not(.r15-overview-title){font-size:14px;letter-spacing:.08em}.r15-overview-intro :is(h2,.r15-overview-title){font-size:31px;line-height:1.5;margin-top:20px}.r15-overview-intro>p{max-width:none;font-size:13px;margin-top:23px}.r15-filter{padding:0 7% 28px;gap:7px}.r15-filter button{padding:9px 13px;font-size:11px;min-height:38px}.r15-logo-stage{height:clamp(240px,68vw,380px);min-height:240px;padding:38px 7%}.r15-logo-stage .r15-logo{width:100%;height:auto;max-height:180px}.r15-stage-line{bottom:18px}.r15-portfolio-caption{display:block;padding:27px 7% 34px}.r15-portfolio-caption h2{font-size:29px;margin-top:12px}.r15-portfolio-caption .r15-category{font-size:11px}.r15-portfolio-caption>p{font-size:13px;margin-top:18px}.r15-portfolio-caption>.r15-link{margin-top:20px}.r15-link{font-size:12px;gap:20px}.r15-cinema-hero{min-height:620px;min-height:min(740px,90svh);padding:50px 7% 95px}.r15-hero-copy>.r15-logo{width:160px;height:65px;margin-bottom:35px}.r15-heading h1{font-size:clamp(39px,10.8vw,60px);line-height:1.25;letter-spacing:0}.r15-heading h2{font-size:25px;line-height:1.75;margin-top:25px}.r15-hero-copy>.r15-link{margin-top:26px}.r15-cinema-shade{background:linear-gradient(90deg,#101d2ce6,#101d2c73)}.r15-cinema-hero>.r15-art{opacity:.45}.r15-scroll-line{height:58px}.r15-motion-toggle{bottom:25px;right:14%;font-size:10px;padding:7px 12px}.r15-manifesto{padding-top:70px;padding-bottom:70px}.r15-manifesto .r15-category{font-size:11px;margin-bottom:25px}.r15-manifesto h2{font-size:33px;line-height:1.75}.r15-manifesto>p{font-size:14px;margin-top:28px}.r15-interlude{grid-template-columns:1fr}.r15-interlude-visual{min-height:300px}.r15-interlude-logo{padding:40px 9%}.r15-interlude-logo .r15-logo{max-height:130px}.r15-interlude-copy{padding:38px 7% 43px}.r15-interlude-copy p{font-size:27px;line-height:1.8}.r15-products{padding-top:55px;padding-bottom:55px}.r15-section-head{display:block;margin-bottom:25px}.r15-section-head h2{font-size:27px}.r15-section-head p{font-size:13px}.r15-rail-controls{margin-top:22px;justify-content:flex-end;gap:10px}.r15-rail-controls button{width:38px;height:38px}.r15-product-rail{gap:16px}.r15-product-card{flex:0 0 87%;min-width:0;padding:28px 25px;min-height:270px}.r15-product-symbol{margin-bottom:30px}.r15-product-card h3{font-size:20px}.r15-product-card p{font-size:13px}.r15-product-note{font-size:11px;margin-top:20px!important}.r15-brand-ending{display:block}.r15-brand-ending .r15-logo{width:170px;height:55px;margin-bottom:20px}.r15-brand-ending h2{font-size:28px}.r15-brand-ending .r15-link{margin-top:26px}.r15-other-brands{gap:15px 22px;font-size:11px;padding-top:26px;padding-bottom:28px}.r15-other-brands>span{flex-basis:100%}.r15-other-brands>a{min-height:35px}.hero .hero-overlay-label{max-width:calc(100% - 44px);font-size:8px;padding:6px 8px}.hero .hero-photo::after{background:linear-gradient(0deg,rgba(10,26,57,.08),transparent 25%)}}
@media(prefers-reduced-motion:reduce){.r15-page *,.r15-page *:before,.r15-page *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.r15-motion-toggle{display:none}}

/* Round 16: approved overview 01, corrected card interpretation. */
.r15-brand-collection{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 30px;width:88%;max-width:1220px;margin:0 auto 76px}.r15-brand-row{border:1px solid #e1e5e9;background:#fff;overflow:hidden;display:flex;flex-direction:column}.r15-logo-stage{min-height:0;height:auto;aspect-ratio:1.75;padding:38px 10%}.r15-logo-stage .r15-logo{width:100%;max-height:170px;height:100%}.r15-portfolio-caption{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding:28px 30px 32px;width:100%;flex:1}.r15-portfolio-caption h2{font-size:28px;margin-top:10px}.r15-portfolio-caption>p{font-size:14px}.r15-portfolio-caption>.r15-link{margin-top:auto;padding-top:5px;white-space:normal}.r15-stage-line{bottom:19px}.r15-brand-row[hidden]{display:none}
@media(max-width:680px){.r15-brand-collection{grid-template-columns:1fr;width:86%;gap:28px;margin-bottom:48px}.r15-logo-stage{aspect-ratio:1.6;padding:32px 10%}.r15-logo-stage .r15-logo{max-height:150px}.r15-portfolio-caption{padding:24px}.r15-portfolio-caption h2{font-size:26px}}

/* Keep the headquarters roof sign in frame, including the intro zoom. */
.hero .hero-photo img{object-position:60% top;transform-origin:60% top;transform:scale(1.04)}
@media(max-width:760px){.hero .hero-photo{height:clamp(320px,48svh,480px)}}
@media(min-width:761px) and (max-width:1000px){.hero{display:flex;flex-direction:column-reverse;min-height:0}.hero .hero-photo{height:clamp(360px,50svh,520px);min-height:360px}}
@media(prefers-reduced-motion:reduce){.hero .hero-photo img{transform:none}}

/* BOWIL portfolio card in its approved brand colors, across languages. */
.r15-brand-bowil .r15-logo-stage{background:#485060}.r15-brand-bowil .r15-logo-stage .r15-logo{filter:brightness(0) invert(1)}

.r15-overview-intro h1.r15-overview-title{margin-top:0;letter-spacing:normal}
