:root{--navy:#132630;--navy2:#1e3743;--ink:#17282f;--muted:#647179;--cream:#f7f6f1;--paper:#fdfcf9;--gold:#ad8d68;--line:#d8d9d5;--wide:1380px;--ease:cubic-bezier(.2,.72,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:"Noto Sans JP","Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}::selection{background:#ad8d68;color:white}.container{width:min(calc(100% - 104px),var(--wide));margin-inline:auto}.serif{font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif}small{font-size:inherit}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(28px,5vw,96px);position:absolute;z-index:30;top:0;left:0;right:0;color:#fff;border-bottom:1px solid rgba(255,255,255,.25);transition:background .3s,color .3s}.header:not(.on-dark){color:var(--ink);background:var(--paper);position:relative;border-color:var(--line)}.header .brand{display:inline-flex;align-items:center;gap:16px;min-width:220px}.brand-mark{width:42px;height:47px;display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:39px;font-weight:500;letter-spacing:-.13em;line-height:1;border-right:1px solid currentColor;padding-right:9px}.brand-jp{display:block;font-family:"Noto Serif JP","Yu Mincho",serif;font-weight:700;letter-spacing:.14em;font-size:17px}.brand-en{display:block;letter-spacing:.17em;font-family:Arial,sans-serif;font-size:7.5px;margin-top:6px}.desktop-nav{display:flex;align-items:center;gap:clamp(24px,3vw,52px);margin-left:auto;margin-right:5vw}.desktop-nav a{font-size:12px;letter-spacing:.14em;position:relative;padding:10px 0;font-weight:600}.desktop-nav a::after{content:"";position:absolute;bottom:1px;left:0;right:100%;height:1px;background:currentColor;transition:right .3s}.desktop-nav a:is(:hover,.active)::after{right:0}.head-contact{display:flex;align-items:center;justify-content:center;gap:11px;border:1px solid currentColor;padding:13px 19px;letter-spacing:.1em;font-size:11px;white-space:nowrap}.head-contact span{opacity:.8;font-size:16px}.menu-btn{display:none}.mobile-panel{display:none}
.eyebrow{font:700 11px/1.4 Arial,sans-serif;letter-spacing:.29em;text-transform:uppercase}.section-kicker{display:flex;align-items:center;gap:18px;color:var(--gold)}.section-kicker:before{content:"";display:block;width:26px;height:1px;background:currentColor}.section-kicker.light{color:#d9b994}.display{font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;line-height:1.6;letter-spacing:.12em}.lead-text{font-size:14px;line-height:2.55;letter-spacing:.1em;color:#55656b}.btn-line{display:inline-flex;align-items:center;justify-content:space-between;gap:50px;border-bottom:1px solid currentColor;padding:16px 3px;letter-spacing:.16em;font-size:12px;transition:gap .25s}.btn-line span{font-size:23px;line-height:.5}.btn-line:hover{gap:70px}
/* Home hero */
.hero{height:min(880px,94svh);min-height:655px;position:relative;background:#203744;color:white;overflow:hidden}.hero .hero-photo{position:absolute;inset:0}.hero .hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center center;filter:grayscale(18%) saturate(.7);transform:scale(1.018);animation:heroMove 14s ease-out both}.hero .hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,21,29,.93) 0%,rgba(12,28,35,.66) 34%,rgba(14,30,38,.20) 70%),linear-gradient(0deg,rgba(8,24,32,.76),transparent 42%)}.hero-inner{position:relative;z-index:2;height:100%;display:flex;align-items:center;padding-top:104px}.hero-head{width:min(910px,88%)}.hero .micro{font:600 11px Arial,sans-serif;letter-spacing:.32em;color:#dfd9ce;margin-bottom:44px}.hero h1{font-size:clamp(44px,5.4vw,76px);letter-spacing:.15em;line-height:1.52;margin:0 0 34px;font-weight:500;text-shadow:0 2px 12px rgba(0,0,0,.1)}.hero h1 em{font-style:normal;display:block}.hero-desc{font-size:14px;line-height:2.4;letter-spacing:.14em;opacity:.9}.hero-desc strong{font-weight:500}.hero .hero-bottom{position:absolute;z-index:2;bottom:32px;left:0;right:0;display:flex;align-items:end;justify-content:space-between;color:#eee}.hero-photo-note{font-size:10px;letter-spacing:.13em;opacity:.8}.scroll-note{font:10px Arial,sans-serif;letter-spacing:.27em;display:flex;align-items:center;gap:17px}.scroll-note:before{content:"";width:1px;height:58px;background:rgba(255,255,255,.7)}@keyframes heroMove{from{transform:scale(1.07)}to{transform:scale(1)}}
/* Statement */
.statement{padding:145px 0 156px;background:var(--paper)}.statement-grid{display:grid;grid-template-columns: .92fr 1.08fr;gap:7%;align-items:start}.statement-index{font-size:12px;letter-spacing:.13em;color:#8c9190;margin-top:40px}.statement h2{font-size:clamp(30px,3.4vw,53px);margin:29px 0 35px}.statement .lead-text{max-width:540px}.statement .btn-line{margin-top:33px}.chapter{color:var(--gold);font:600 12px Arial,sans-serif;letter-spacing:.27em}.numbering{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:14px;font:11px Arial,sans-serif;letter-spacing:.12em;color:#657078}.statement .left-copy{border-right:1px solid var(--line);min-height:340px;padding-right:13%}
/* Photo band */
.photo-band{position:relative;min-height:640px;background:var(--navy);overflow:hidden;color:white;display:flex;align-items:end}.photo-band>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;filter:grayscale(24%)}.photo-band:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,19,26,.88),rgba(7,19,26,.08) 72%),linear-gradient(90deg,rgba(6,22,32,.3),transparent)}.photo-band-content{position:relative;z-index:1;padding-bottom:76px}.photo-band h2{font-size:clamp(27px,3vw,46px);line-height:1.7;letter-spacing:.12em}.photo-band p{font-size:12px;letter-spacing:.14em;line-height:2.2;opacity:.85}
/* Capabilities */
.capabilities{background:var(--cream);padding:154px 0 150px}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:70px;gap:40px}.section-head h2{font-size:clamp(35px,4vw,60px);margin:25px 0 0;line-height:1.3}.section-head .head-note{font-size:12px;line-height:2.3;letter-spacing:.1em;max-width:330px;color:#6e7779}.cap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.cap-card{padding:0 0 25px;border-bottom:1px solid #a8afa9}.cap-card .visual{aspect-ratio:1.1;overflow:hidden;margin-bottom:26px;background:#3b4c56}.cap-card .visual img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease);filter:saturate(.65)}.cap-card:hover .visual img{transform:scale(1.055)}.cap-card .index{color:var(--gold);letter-spacing:.25em;font:600 11px Arial,sans-serif}.cap-card h3{font-family:"Noto Serif JP","Yu Mincho",serif;font-weight:500;font-size:22px;letter-spacing:.1em;margin:16px 0}.cap-card p{font-size:12px;line-height:2.2;color:#647178;letter-spacing:.06em}
/* Works preview */
.works-preview{background:var(--navy);padding:132px 0 150px;color:white}.works-preview .section-head{margin-bottom:61px}.works-preview .head-note{color:#d5d9d7}.works-feature{display:grid;grid-template-columns:1.25fr .75fr;min-height:465px}.works-feature-photo{overflow:hidden;background:#2f4953}.works-feature-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(22%);transition:transform .85s var(--ease)}.works-feature:hover .works-feature-photo img{transform:scale(1.03)}.works-feature-copy{border:1px solid #5c7076;border-left:0;padding:clamp(30px,5vw,80px);display:flex;flex-direction:column;justify-content:space-between}.works-feature-copy h3{font-size:clamp(26px,3vw,39px);font-weight:500;line-height:1.65;margin:20px 0}.works-feature-copy p{font-size:12px;color:#b9c6ca;line-height:2.2;letter-spacing:.1em}.works-feature-copy .btn-line{align-self:flex-start}.works-feature-copy .small-note{font-size:10px;opacity:.6;letter-spacing:.08em}
/* Company preview */
.company-preview{padding:148px 0;background:#fff}.company-preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.company-preview h2{font-size:clamp(33px,3.7vw,58px);margin:28px 0 36px}.company-preview .large-1962{font:400 clamp(125px,17vw,260px)/1 Georgia,serif;letter-spacing:-.09em;color:#e7e8e5;text-align:right}.company-preview .large-1962 span{display:block;font:600 11px Arial,sans-serif;color:#a4a6a2;letter-spacing:.24em;margin-right:5px;text-align:right}.company-preview .btn-line{margin-top:26px}
/* Contact CTA/footer */
.contact-cta{background:#d9d7cc;padding:94px 0}.cta-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end}.contact-cta h2{font-size:clamp(32px,3.5vw,58px);margin:22px 0 4px}.contact-cta p{font-size:12px;letter-spacing:.11em;line-height:2.3}.contact-cta .contact-large{font:400 clamp(32px,4.2vw,61px)/1.2 Georgia,serif;letter-spacing:.04em;white-space:nowrap}.contact-cta .contact-email{display:block;font:13px Arial,sans-serif;letter-spacing:.09em;margin-top:16px}.footer{background:#0e1c24;color:#e2e5e1;padding:78px 0 36px}.foot-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.footer .brand{display:flex;align-items:center;gap:16px}.footer-nav{display:flex;justify-content:flex-end;gap:30px;flex-wrap:wrap}.footer-nav a{font-size:11px;letter-spacing:.15em}.foot-address{font-size:11px;line-height:2.25;color:#b3bdc0;margin:32px 0 60px;letter-spacing:.07em}.foot-bottom{border-top:1px solid #43525a;padding-top:25px;display:flex;justify-content:space-between;color:#909da2;font:10px Arial,sans-serif;letter-spacing:.09em}.foot-note{font-size:10px}
/* Inner pages */
.sub-hero{background:var(--navy);color:#fff;min-height:490px;display:flex;align-items:center;position:relative;overflow:hidden}.sub-hero.has-image{min-height:600px}.sub-hero .sub-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(15%)}.sub-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#132630ee,#132630aa 45%,#13263022)}.sub-hero .container{z-index:2;position:relative;padding-top:40px}.sub-hero h1{font-size:clamp(47px,6vw,90px);font-weight:400;line-height:1.25;letter-spacing:.02em;margin:20px 0 14px;font-family:Georgia,serif}.sub-hero p{font-size:16px;letter-spacing:.3em}.sub-hero .eyebrow{color:#c6a783}.breadcrumb{background:var(--paper);padding:23px 0;font-size:11px;color:#768087;letter-spacing:.13em}.breadcrumb a:hover{text-decoration:underline}.inner-intro{padding:120px 0 104px}.inner-intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%}.inner-intro h2{font-size:clamp(32px,3.6vw,56px);margin:22px 0 0}.inner-intro p{margin-top:43px}.divider-label{border-bottom:1px solid var(--line);padding-bottom:13px;font:600 11px Arial,sans-serif;letter-spacing:.27em;color:var(--gold)}
.service-list{background:var(--cream);padding:90px 0 140px}.service-item{display:grid;grid-template-columns:.12fr .43fr .45fr;gap:35px;align-items:start;border-top:1px solid #bbc2bc;padding:62px 0}.service-item .num{font:19px Georgia,serif;color:var(--gold)}.service-item h3{font-size:clamp(24px,2.7vw,39px);margin:2px 0;line-height:1.5;font-weight:500}.service-item p{font-size:13px;line-height:2.4;color:#65717a;margin:3px 0}.service-photo-wrap{position:relative;min-height:410px;background:var(--navy);overflow:hidden}.service-photo-wrap img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.75}.service-photo-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#132630aa,transparent 80%)}.service-photo-wrap .container{position:relative;color:#fff;min-height:410px;display:flex;justify-content:center;flex-direction:column}.service-photo-wrap h2{font-size:clamp(30px,4vw,60px);max-width:760px}
.work-hero-feature{padding:42px 0 126px}.work-hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:64px;align-items:end}.work-hero-grid img{width:100%;aspect-ratio:1.38;object-fit:cover;filter:saturate(.65)}.work-hero-grid h2{font-size:clamp(28px,3vw,45px);margin:28px 0}.work-hero-grid p{font-size:13px;line-height:2.35;color:#657179}.work-hero-grid .tag{font-size:10px;letter-spacing:.2em;color:#917958}.work-image-list{background:var(--cream);padding:115px 0 128px}.work-image-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.work-image-grid figure{margin:0}.work-image-grid img{width:100%;aspect-ratio:1.35;object-fit:cover}.work-image-grid figcaption{font-size:12px;line-height:1.8;color:#68747a;padding:18px 0}.work-image-grid figcaption strong{display:block;color:#152a34;font-size:16px;font-weight:500;margin-bottom:4px}.work-disclaimer{border-top:1px solid #cdd1cc;padding-top:19px;color:#737a7b;font-size:11px;line-height:1.9;margin-top:54px}
.company-main{padding:60px 0 135px}.company-table{width:100%;border-collapse:collapse;table-layout:fixed}.company-table tr{border-bottom:1px solid #d5d9d7}.company-table th,.company-table td{text-align:left;vertical-align:top;padding:25px 16px;font-size:13px;line-height:2.1;font-weight:400;letter-spacing:.06em}.company-table th{color:#687781;width:28%}.company-table td{color:#1b2e37}.company-table .muted-note{font-size:10px;color:#69797c}.company-note{background:#ecede9;padding:55px 0 72px}.company-note p{line-height:2.3;letter-spacing:.1em;font-size:13px;color:#53636a;max-width:760px}.history-stat{font:120px Georgia,serif;color:#cdd3ce;line-height:1}
.contact-main{padding:120px 0 145px}.contact-main-grid{display:grid;grid-template-columns:.84fr 1.16fr;gap:14%}.contact-main h2{font-size:clamp(32px,3.6vw,52px);margin:22px 0 22px}.contact-main .contact-method{padding:34px 0;border-bottom:1px solid var(--line)}.contact-main .contact-method small{display:block;color:#87908e;font:11px Arial,sans-serif;letter-spacing:.2em;margin-bottom:12px}.contact-main .contact-method a.big{font:clamp(27px,4vw,52px)/1.4 Georgia,serif;letter-spacing:.05em;word-break:break-word}.contact-main .contact-method a.mail{font:clamp(17px,2.2vw,28px)/1.4 Arial,sans-serif;letter-spacing:.03em}.contact-main .contact-method a:hover{color:#a2805f}.contact-main p{font-size:13px;color:#606e72;line-height:2.45}.contact-main .note{font-size:11px;color:#879092;margin-top:28px}.address-area{background:#f0f0eb;padding:112px 0}.address-area h2{font-size:35px;margin:22px 0 34px}.address-area p{font-size:14px;line-height:2.1}.address-text{display:flex;justify-content:space-between;gap:45px;align-items:end}.map-button{display:inline-flex;gap:25px;border-bottom:1px solid #7e8b8b;padding:16px 0;font-size:12px;letter-spacing:.13em}
/* Reveal graceful: hidden only after JS opts in */
.js-motion .reveal{opacity:0;transform:translateY(35px);transition:opacity .82s ease,transform .95s var(--ease)}.js-motion .reveal.revealed{opacity:1;transform:translateY(0)}.js-motion .reveal.left{transform:translateX(-35px)}.js-motion .reveal.left.revealed{transform:translateX(0)}.js-motion .reveal.right{transform:translateX(35px)}.js-motion .reveal.right.revealed{transform:translateX(0)}
@media(max-width:1160px){.desktop-nav{gap:20px;margin-right:2.5vw}.head-contact{font-size:10px;padding:12px}.header{padding-inline:35px}.header .brand{min-width:180px}.brand-jp{font-size:15px}.statement{padding:110px 0}}
@media(max-width:860px){.container{width:min(calc(100% - 44px),var(--wide))}.header{height:74px;padding:0 22px}.header .brand{min-width:0}.brand-mark{font-size:32px;width:34px;height:38px}.brand-jp{font-size:14px}.brand-en{font-size:6px}.desktop-nav,.head-contact{display:none}.menu-btn{display:block;appearance:none;border:0;background:transparent;color:inherit;width:42px;height:42px;padding:10px;z-index:50}.menu-btn i{display:block;width:22px;height:1px;background:currentColor;transition:transform .25s;position:relative}.menu-btn i+ i{margin-top:7px}.menu-open .menu-btn i:nth-child(1){transform:translateY(4px) rotate(45deg)}.menu-open .menu-btn i:nth-child(2){transform:translateY(-4px) rotate(-45deg)}.mobile-panel{position:fixed;display:flex;flex-direction:column;justify-content:center;inset:0;background:#10232e;color:#fff;z-index:25;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .3s,visibility .3s;padding:96px 40px}.menu-open .mobile-panel{visibility:visible;opacity:1;pointer-events:auto}.mobile-panel a{display:block;font-size:22px;letter-spacing:.14em;border-bottom:1px solid #42545c;padding:18px 0}.mobile-panel .mobile-contact{margin-top:38px;font:25px Georgia,serif}.hero{min-height:630px;height:88svh}.hero .hero-photo img{object-position:45% center}.hero .hero-photo:after{background:linear-gradient(90deg,rgba(7,21,29,.90),rgba(7,21,29,.50))}.hero-inner{padding-top:76px}.hero-head{width:100%}.hero h1{font-size:clamp(42px,8vw,65px)}.hero .micro{margin-bottom:30px}.statement{padding:95px 0}.statement-grid,.company-preview-grid,.inner-intro-grid,.contact-main-grid{grid-template-columns:1fr;gap:24px}.statement .left-copy{border-right:0;min-height:auto;padding-right:0}.statement-index{display:none}.statement-grid>.right-copy{padding-top:0}.photo-band{min-height:520px}.capabilities{padding:105px 0}.cap-grid{gap:15px}.cap-card h3{font-size:18px}.works-preview{padding:90px 0}.works-feature{grid-template-columns:1fr}.works-feature-photo{height:350px}.works-feature-copy{border:1px solid #5c7076;border-top:0;gap:35px}.company-preview{padding:100px 0}.company-preview .large-1962{text-align:left}.cta-grid{grid-template-columns:1fr;gap:25px}.contact-cta{padding:72px 0}.footer{padding:55px 0 30px}.foot-grid{grid-template-columns:1fr;gap:45px}.footer-nav{justify-content:start}.sub-hero{min-height:400px}.sub-hero.has-image{min-height:470px}.inner-intro{padding:85px 0}.inner-intro p{margin-top:0}.service-item{grid-template-columns:70px 1fr;gap:20px}.service-item p{grid-column:2}.work-hero-grid{grid-template-columns:1fr;gap:32px}.work-hero-feature{padding-bottom:100px}.company-main{padding-top:20px}.contact-main{padding:90px 0 110px}}
@media(max-width:600px){.hero{min-height:630px;max-height:780px}.hero h1{font-size:clamp(37px,10vw,53px);letter-spacing:.09em;line-height:1.6}.hero-desc{font-size:12px;line-height:2.3}.hero .micro{font-size:9px;letter-spacing:.22em}.hero .hero-bottom{bottom:17px}.scroll-note{display:none}.hero-photo-note{font-size:9px}.statement{padding:80px 0 93px}.statement h2{font-size:31px}.display{letter-spacing:.08em}.lead-text{font-size:12px;line-height:2.4}.section-head{display:block;margin-bottom:45px}.section-head h2{font-size:38px}.section-head .head-note{margin-top:20px}.capabilities{padding:90px 0}.cap-grid{grid-template-columns:1fr;gap:50px}.cap-card .visual{aspect-ratio:1.42}.cap-card h3{font-size:21px}.photo-band{min-height:490px}.photo-band-content{padding-bottom:45px}.photo-band h2{font-size:27px}.works-feature-photo{height:260px}.works-feature-copy{padding:30px}.company-preview h2{font-size:31px}.company-preview .large-1962{font-size:100px}.contact-cta h2{font-size:32px}.contact-cta .contact-large{font-size:36px}.footer-nav{gap:16px}.footer-nav a{font-size:10px}.foot-bottom{display:block;line-height:2}.sub-hero h1{font-size:54px}.sub-hero p{font-size:13px}.inner-intro h2{font-size:29px}.service-list{padding:50px 0 85px}.service-item{grid-template-columns:1fr;gap:7px;padding:35px 0}.service-item p{grid-column:1}.service-item h3{font-size:26px}.work-hero-grid img{aspect-ratio:1.05}.work-image-grid{grid-template-columns:1fr;gap:24px}.work-image-list{padding:80px 0}.company-table th{width:33%}.company-table th,.company-table td{font-size:12px;padding:18px 4px;word-break:break-word}.company-main{padding-bottom:85px}.contact-main .contact-method a.big{font-size:37px}.contact-main .contact-method a.mail{font-size:21px}.address-text{display:block}.address-area{padding:80px 0}.map-button{margin-top:20px}.history-stat{font-size:83px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero .hero-photo img{animation:none;transform:none}.js-motion .reveal,.js-motion .reveal.left,.js-motion .reveal.right{opacity:1;transform:none;transition:none}*{scroll-behavior:auto!important}}


/* KO-PAINT SHINE v2 — repeatable, accessible cinematic highlight */
br.only-mobile{display:none}
.hero .hero-photo {isolation:isolate;z-index:0}
.hero .hero-photo::after {z-index:1}
.hero-glint {
  position:absolute;z-index:2;pointer-events:none;
  top:-26%;left:-65vw;width:50vw;height:152%;
  opacity:0;transform:skewX(-18deg) translate3d(0,0,0);
  background:linear-gradient(90deg,
    transparent 0%,rgba(255,255,255,.015) 24%,
    rgba(231,244,255,.09) 36%,rgba(255,255,255,.25) 48%,
    rgba(255,251,237,.37) 50%,rgba(255,255,255,.20) 52%,
    rgba(205,230,239,.07) 68%,transparent 100%);
  filter:blur(8px);mix-blend-mode:screen;will-change:transform,opacity;
}
.hero-spark {
  position:absolute;z-index:3;pointer-events:none;left:72%;top:39%;
  width:28px;height:28px;opacity:0;transform:translate(-50%,-50%) scale(.2);
  background:radial-gradient(circle,white 0%,#fff8db 15%,rgba(255,255,255,.9) 27%,transparent 65%);
  filter:drop-shadow(0 0 10px rgba(255,247,209,.7));
  will-change:opacity,transform;
}
.hero-spark::after {
  content:"";position:absolute;inset:-26px;
  background:linear-gradient(0deg,transparent 46%,rgba(255,255,255,.95) 49.5%,white 50%,rgba(255,255,255,.9) 50.5%,transparent 54%),
             linear-gradient(90deg,transparent 46%,rgba(255,255,255,.95) 49.5%,white 50%,rgba(255,255,255,.9) 50.5%,transparent 54%);
  clip-path:circle(36% at center);
}
.shine-playing .hero-glint {animation:koSweep 2.1s cubic-bezier(.23,.22,.5,1) .08s both}
.shine-playing .hero-spark {animation:koSpark .85s ease-out 1.24s both}
@keyframes koSweep {
  0% {opacity:0;transform:skewX(-18deg) translate3d(0,0,0)}
  14% {opacity:0}
  40% {opacity:.70}
  62% {opacity:.92}
  100% {opacity:0;transform:skewX(-18deg) translate3d(355%,0,0)}
}
@keyframes koSpark {
  0%,100% {opacity:0;transform:translate(-50%,-50%) scale(.2)}
  30% {opacity:.92;transform:translate(-50%,-50%) scale(1.05)}
  65% {opacity:.55;transform:translate(-50%,-50%) scale(.65)}
}
.header.on-dark .brand-mark{position:relative;overflow:hidden}
.header.on-dark .brand-mark::after {
  content:"";position:absolute;inset:0 auto 0 -56%;width:14px;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.92),transparent);
  filter:blur(1px);opacity:0;
}
.shine-playing .header.on-dark .brand-mark::after{animation:koLogoShine 1.35s ease-out .50s both}
@keyframes koLogoShine {
  0%{opacity:0;transform:translateX(0) skewX(-20deg)}
  30%{opacity:1}
  100%{opacity:0;transform:translateX(110px) skewX(-20deg)}
}
.shine-replay {
  display:inline-flex;align-items:center;gap:10px;
  background:rgba(11,26,35,.32);color:#fff;
  border:1px solid rgba(255,255,255,.36);border-radius:2px;
  padding:10px 14px;font-size:10px;letter-spacing:.13em;
  cursor:pointer;white-space:nowrap;transition:background .3s,border-color .3s,transform .3s;
}
.shine-replay:hover,.shine-replay:focus-visible{
  background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.9)
}
.shine-replay:active{transform:scale(.97)}
.shine-replay span{font-size:15px;color:#f6e5bf}
@media(max-width:860px){.hero-spark{left:68%;top:32%}.shine-replay{margin-left:auto}}
@media(max-width:600px){br.only-mobile{display:initial}.hero-spark{left:67%;top:36%;transform:translate(-50%,-50%) scale(.7)}.shine-replay{font-size:9px;padding:9px 10px}}
@media(prefers-reduced-motion:reduce){
  .hero-glint,.hero-spark,.header.on-dark .brand-mark::after{animation:none!important;opacity:0!important}
  .shine-replay{display:none}
}
/* PC: keep replay button at its original center position (spacer replaces removed label) */
@media(min-width:861px){.hero .hero-bottom::before{content:"";flex:0 0 247px}}
