/* TOUKA / Nocturne — wire outlines, silk-dark ground, light through petals. */
:root{--ivory:#f5eef7;--ink:#f0e8f2;--plum:#2b1635;--lilac:#c8a8d8;--brass:#c3a16f;--line:#68556f;--night:#100d16;--muted:#c4b6cc}
body{background:var(--night);color:var(--ink)}
.site-header{background:rgba(17,12,23,.95);border-bottom:1px solid #80674760}
.brand-ja{color:#f7edf9}.brand-en{color:#d7bb8f;border-left-color:#a98b60}.header-note{color:#c2a4cf}.site-header nav a:hover{border-color:#d3ad79}
a:focus-visible,button:focus-visible{outline-color:#e1bcff}
.hero{background:#150e1e;position:relative;isolation:isolate;border-color:#5b405f}
.hero-copy{background:radial-gradient(ellipse at 25% 40%,#382140 0,transparent 64%),linear-gradient(145deg,#170f20,#0d0c13);isolation:isolate;overflow:hidden}
.hero-copy:before{content:"";position:absolute;z-index:-1;inset:-12% -35% -8% -18%;background:url("wire-flower.svg") center/contain no-repeat;opacity:.18;transform:rotate(-17deg);pointer-events:none}
.hero-copy:after{content:"TOUKA";position:absolute;z-index:-1;bottom:0;left:8%;font:clamp(70px,10vw,150px)/1 Georgia,serif;letter-spacing:.08em;color:#b28db30b;pointer-events:none}
.hero .eyebrow{color:#dfbf91;padding-left:34px;position:relative}
.hero .eyebrow:before{content:"";width:21px;height:1px;position:absolute;left:0;top:50%;background:#ccaa76}
.hero-kicker{color:#c4b3cd}.hero h1{color:#fff5ff;text-shadow:0 0 48px #d2a5e21f}
.hero h1 .light-text{color:#e1bce9}
.hero-description{color:#e1d4e6}.hero-photo{background:#160f1c;position:relative}
.hero-photo:after{content:"";position:absolute;inset:15px;border:1px solid #ebd0a073;pointer-events:none}
.hero-disclosure{color:#c5b5cc}.hero-disclosure strong{color:#ead8ee}
.cta{background:#24162e;border:1px solid #b89568;color:#f4e9f6;position:relative}
.cta:after{content:"";position:absolute;inset:4px;border:1px solid #b8956826;pointer-events:none}
.cta:hover{background:#4b2b58;color:#fff7ff;border-color:#e5c496}
.cta span{color:#dec08f}.hero-foot{color:#bfa6c9}.hero-foot i{background:#b08b60}
.concept{background:radial-gradient(ellipse at 95% 50%,#2b193b55,transparent 60%),#100d16;position:relative}
.concept-copy .eyebrow,.section-heading .eyebrow{color:#cbaa78}
.concept h2,.detail h2,.styling h2{color:#f4e9f8}
.concept-photo{position:relative}
.concept-photo:before{content:"";position:absolute;inset:-15px 18px 40px -15px;border:1px solid #ac86514d;pointer-events:none}
.concept-photo img{position:relative;box-shadow:0 20px 60px #0004}
.image-caption{color:#bcaac7}.small-note{color:#bcaac7}.concept-note{border-top-color:#63466b}
.collection{background:radial-gradient(ellipse at 15% 18%,#633c6a44,transparent 55%),linear-gradient(130deg,#28162f,#150f20 70%);position:relative;border-top:1px solid #86678a4d;border-bottom:1px solid #86678a4d}
.collection .section-heading h2{color:#f5e8fa}
.selection-hint{color:#c8b2cf}.gallery{position:relative}
.main-image-wrap{background:#0e0c14;border:1px solid #b998686b;box-shadow:0 18px 60px #0004;padding:10px}
.main-image-wrap .image-caption{background:#160d20df;color:#f5e8fb;padding:4px 10px;bottom:16px;left:16px;border-left:1px solid #d2ad79}
.work-count{color:#cbaa78}.work-count span:first-child{font-size:53px;font-style:italic}
.work-copy h3{color:#ead0f5}.work-copy>p#work-text{color:#e4d8ea}
.tags li{border-color:#8a6b966b;color:#d6bfdc;background:#2e1b38}
.work-controls button{border-color:#9c7eaa;background:#251a30;color:#eeddf3}
.work-controls button:hover{background:#654270}.work-controls span{color:#ccb5d7}
.thumb img{background:#100d17;filter:brightness(.88);border:1px solid #7863834d}
.thumb[aria-pressed=true]{border-bottom-color:#dbbb88}.thumb[aria-pressed=true] img{outline-color:#d5b27d;filter:none}
.thumb:hover img{opacity:1;filter:brightness(1.08)}.thumb small{color:#cfac79}.thumb>span{color:#d8c6df}
.thumbnails{scrollbar-color:#ab83b7 #1b1323}
.detail{background:linear-gradient(110deg,#100d16,#1a1223 85%);position:relative;isolation:isolate;overflow:hidden}
.detail:before{content:"";position:absolute;z-index:-1;width:75%;height:75%;right:-28%;top:6%;background:url("wire-flower.svg") center/contain no-repeat;opacity:.08;pointer-events:none;transform:rotate(25deg)}
.section-aside{color:#ad8fbb}.detail-crop{border:1px solid #8f6b9759}.detail-wisteria>img{background:#0c0a10;border:1px solid #a5845e60;padding:8px}
.detail figcaption .eyebrow{color:#c5a77b}.detail figcaption h3{color:#e2c3ee}.detail figcaption p{color:#d6c8df}
.layering,.detail-note{border-top-color:#59415e}
.styling{background:linear-gradient(160deg,#26152f,#120d1b 80%);border-top:1px solid #74517a50}
.styling .section-heading>p{color:#cdbbd5}.styling-row{border-bottom-color:#62456d}
.styling-photo{position:relative}
.styling-photo:after{content:"";position:absolute;inset:10px;border:1px solid #d1b58466;pointer-events:none}
.styling-photo img{background:#100c16;padding:12px}
.styling-copy .eyebrow{color:#caac7c}.styling-copy h3{color:#eddbf5}.styling-copy p{color:#d9c8e0}
.swatches i{border:1px solid #cfb8d19c;box-shadow:0 0 0 4px #d7b4ed08}
.closing{background:radial-gradient(ellipse at 50% 0%,#60316d88,transparent 62%),#100b18;border-top:1px solid #a17b845e;position:relative;isolation:isolate;overflow:hidden}
.closing:before{content:"";position:absolute;z-index:-1;width:500px;height:640px;left:calc(50% - 250px);top:25px;background:url("wire-flower.svg") center/contain no-repeat;opacity:.09;transform:rotate(18deg);pointer-events:none}
.closing>.eyebrow{color:#d2b584}.closing h2{color:#efd4fa}.closing footer{border-top-color:#65446c}.closing .closing-disclosure{color:#bdabc7}.closing .cta-light{background:#34203e;border-color:#bc9a70}.closing .cta-light:hover{background:#684274;color:#fff}
.skip-link{background:#f5eef7;color:#25142f}
@media(max-width:700px){.hero-copy:before{inset:-15% -50% -15% 5%;opacity:.23}.hero-copy:after{font-size:82px;bottom:12px}.hero-photo{margin:0 16px 20px}.hero-photo:after{inset:10px}.concept-photo:before{inset:-10px 16px 40px -10px}.main-image-wrap{padding:6px}.main-image-wrap .image-caption{bottom:12px;left:12px}.work-count span:first-child{font-size:36px}.styling-photo img{padding:8px}.styling-photo:after{inset:7px}}

/* Decorative lettering is omitted from assistive technology. */
.hero-copy:after{content:none}
