@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight:400 500;
  font-display: swap;
  src: url(assets/fonts/cormorant-garamond-italic-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight:400 500;
  font-display: swap;
  src: url(assets/fonts/cormorant-garamond-italic-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight:400 500;
  font-display: swap;
  src: url(assets/fonts/cormorant-garamond-italic-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight:400 500;
  font-display: swap;
  src: url(assets/fonts/cormorant-garamond-normal-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight:400 500;
  font-display: swap;
  src: url(assets/fonts/cormorant-garamond-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight:400 500;
  font-display: swap;
  src: url(assets/fonts/cormorant-garamond-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight:400 600;
  font-display: swap;
  src: url(assets/fonts/manrope-normal-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight:400 600;
  font-display: swap;
  src: url(assets/fonts/manrope-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight:400 600;
  font-display: swap;
  src: url(assets/fonts/manrope-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root{--paper:#f8f8f2;--ink:#183e35;--green:#123f35;--lime:#d5e8a5;--sage:#e5ecdf;--muted:#748276;--line:#dce2d5;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.65 var(--sans);-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.03;letter-spacing:-2.7px}h1 em,h2 em{font-weight:400;color:#6f8961}a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit}button{border:0;background:none;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%}svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b7945b;outline-offset:5px}.symbols{height:0;width:0;position:absolute;overflow:hidden}.wrap{max-width:1376px;width:calc(100% - 112px);margin:auto}.announcement{background:var(--green);color:#f7f7ea;font-size:10px;letter-spacing:.7px;display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 30px;position:relative}.live-dot{width:5px;height:5px;border-radius:50%;background:var(--lime)}.announcement-side{position:absolute;right:55px;font-size:8px;letter-spacing:2px;color:#bfd1bb}.header{position:sticky;top:0;z-index:30;background:#f8f8f2ed;border-bottom:1px solid var(--line);backdrop-filter:blur(20px)}.nav{height:90px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:9px;font-size:26px;line-height:1;letter-spacing:2px;flex-shrink:0}.brand-mark{font-size:40px;color:#a99d71;transform:rotate(-42deg)}.brand small{display:block;font-size:7px;letter-spacing:3.3px;text-align:center;margin-top:9px}.nav nav{display:flex;align-items:center;gap:30px;font-size:12px}.nav nav a{position:relative}.nav nav a:after{content:"";width:0;height:1px;background:var(--ink);position:absolute;left:0;bottom:-7px;transition:width .2s}.nav nav a:hover:after{width:100%}.nav-tools{display:flex;align-items:center;gap:21px}.nav-tools select{background:none;border:0;font-size:11px;cursor:pointer}.icon-btn{display:flex;align-items:center;justify-content:center;gap:7px;padding:4px}.icon-btn>span{font-size:9px;background:var(--sage);padding:1px 6px;border-radius:20px}.icon-btn svg{width:20px}.nav-contact{font-size:11px;display:flex;gap:16px;border:1px solid #b9c6af;padding:9px 15px;align-items:center;border-radius:40px}.nav-contact svg{width:13px}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:45px;padding-top:42px;padding-bottom:63px;min-height:700px}.hero-copy{padding-top:22px}.eyebrow{font-size:9px;font-weight:600;letter-spacing:2px;line-height:1.7;text-transform:uppercase}.hero-copy>.eyebrow{display:flex;align-items:center;gap:13px}.short-line{height:1px;width:30px;background:#8b9e81}h1{font-size:clamp(66px,6.6vw,100px);margin-top:25px;margin-bottom:24px}.hero-intro{max-width:385px;font-size:14px;line-height:1.9;color:var(--muted)}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:16px 22px;border:1px solid transparent;border-radius:5px;font-size:11px;line-height:1.6;transition:background .2s,transform .2s;cursor:pointer}.button svg{width:17px}.button:hover{transform:translateY(-2px)}.primary{background:var(--green);color:#fff}.primary:hover{background:#245d4b}.secondary{background:transparent;border-color:#9bb08d}.secondary:hover{background:var(--sage)}.quiet-link{font-size:10px;text-decoration:underline;text-underline-offset:6px}.hero-proof{display:flex;gap:15px;align-items:center;margin-top:55px}.leaf-seal{width:43px;height:43px;border:1px solid #c4d2b6;border-radius:50%;display:grid;place-items:center}.leaf-seal svg{width:19px}.hero-proof>p{font-size:10px;color:var(--muted);max-width:130px;line-height:1.6}.hero-line{height:33px;width:1px;background:var(--line);margin:0 7px}.hero-mini{font-size:8px;letter-spacing:1.7px;line-height:1.8}.hero-mini>b{font-weight:400;font-size:7px;letter-spacing:1px;color:var(--muted)}.hero-world{height:564px;position:relative;background:#234c40;border-radius:48% 48% 8px 8px;isolation:isolate;margin-left:15px}.hero-world:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(ellipse at 10% 60%,#d7e5b81f,transparent 60%);z-index:-1}.hero-image{position:absolute;inset:21px 23px 55px;border-radius:50% 50% 5px 5px;overflow:hidden}.hero-image>img{width:100%;height:100%;object-fit:cover;object-position:64% center;filter:saturate(.8)}.image-shade{position:absolute;inset:0;background:linear-gradient(130deg,#103b3833,transparent 60%,#183e3566)}.photo-type{position:absolute;top:65px;left:24px;color:#e5ecd9;font-size:10px;letter-spacing:3px;line-height:1.8}.orbit{position:absolute;border:1px solid #c4d6a63b;border-radius:50%;pointer-events:none}.orbit-one{inset:65px -20px 70px;transform:rotate(-20deg)}.orbit-two{inset:55px -10px 80px;transform:rotate(25deg)}.floating-leaf{position:absolute;right:3px;top:50px;z-index:2;background:var(--lime);width:61px;height:61px;border-radius:50%;display:grid;place-items:center;transform:rotate(15deg);box-shadow:0 8px 35px #0c342322}.floating-leaf svg{width:31px;height:31px;stroke-width:1}.feature-card{position:absolute;bottom:26px;left:-37px;display:flex;background:#f1f1e9e8;backdrop-filter:blur(22px);border:1px solid #ffffffe8;width:315px;min-height:162px;border-radius:8px;overflow:hidden;box-shadow:0 15px 45px #0f352b22;animation:float-in .6s ease}.feature-card>img{width:122px;object-fit:cover;mix-blend-mode:multiply}.feature-card>div{padding:20px 14px;flex:1}.feature-card .eyebrow{font-size:7px;letter-spacing:1.2px}.feature-card h3{font-family:var(--serif);font-size:20px;font-weight:400;line-height:1.17;margin-top:7px}.feature-arrow{margin-top:12px;width:31px;height:31px;border:1px solid #aebca1;border-radius:50%;display:grid;place-items:center}.feature-arrow svg{width:15px}.hero-switch{position:absolute;bottom:14px;right:24px;color:#cbd7bf;display:flex;align-items:center;gap:12px}.hero-switch>span{font-size:6px;letter-spacing:1.3px}.hero-switch>div{display:flex;gap:3px}.hero-switch button{width:18px;height:20px;padding:0;position:relative}.hero-switch button:before{content:"";position:absolute;width:4px;height:4px;background:#ffffff55;top:8px;left:7px;border-radius:50%;transition:transform .2s}.hero-switch button.active:before{background:var(--lime);transform:scale(1.6)}.vertical-note{writing-mode:vertical-rl;position:absolute;right:-29px;top:155px;font-size:7px;letter-spacing:2px;color:#7a8b72}.discovery-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.discovery-strip>.wrap{display:flex;gap:50px;align-items:center;padding-top:21px;padding-bottom:21px}.discovery-strip a{display:flex;align-items:center;gap:10px;font-size:11px}.discovery-strip svg{width:18px;color:#83986e}.strip-note{margin-left:auto;font-size:7px;letter-spacing:2px;color:#84917a}.section{padding-top:96px;padding-bottom:90px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:38px}h2{font-size:clamp(40px,4.2vw,61px);margin-top:18px}.section-heading>p{max-width:305px;font-size:12px;color:var(--muted);padding-bottom:3px;line-height:1.9}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px}.searchbox{display:flex;gap:12px;align-items:center;width:410px;border-bottom:1px solid #aabb9b;padding:10px 0}.searchbox svg{width:18px}.searchbox input{border:0;background:none;outline:0;width:100%;font-size:12px}.catalog-tools{display:flex;align-items:center;gap:23px}.catalog-tools select{background:none;border:1px solid var(--line);border-radius:4px;padding:8px 12px;font-size:10px;cursor:pointer}.saved-filter{display:flex;align-items:center;gap:7px;font-size:10px;border-bottom:1px solid transparent;padding:8px 0}.saved-filter svg{width:15px}.saved-filter.active{border-color:var(--ink)}.saved-filter.active svg{fill:var(--ink)}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}.filter{font-size:10px;border:1px solid var(--line);border-radius:30px;padding:9px 16px;transition:all .2s}.filter.active{background:var(--green);border-color:var(--green);color:white}.filter:hover{border-color:#6c855d}.catalog-meta{display:flex;justify-content:space-between;font-size:9px;color:var(--muted);margin-bottom:20px;gap:12px}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px 20px}.product-card{min-width:0}.product-image{position:relative;background:#eaf0e4;height:310px;border-radius:8px;overflow:hidden}.product-image>a:not(.image-link){width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:38px 22px 42px}.product-image img{max-height:100%;max-width:77%;object-fit:contain;mix-blend-mode:multiply;transition:transform .65s cubic-bezier(.21,.75,.21,1)}.product-image:hover img{transform:scale(1.07) rotate(-2deg)}.cat-face .product-image,.detail-visual.cat-face{background:#e9eee4}.cat-body .product-image,.detail-visual.cat-body{background:#f2e5df}.cat-hair .product-image,.detail-visual.cat-hair{background:#e3ece0}.cat-hygiene .product-image,.detail-visual.cat-hygiene{background:#efecdc}.cat-wellness .product-image,.detail-visual.cat-wellness{background:#eeeadd}.cat-device .product-image,.detail-visual.cat-device{background:#e6e9ef}.product-index{position:absolute;top:17px;left:15px;font-size:7px;letter-spacing:1.3px;color:#7f8d76;z-index:1}.heart-btn{position:absolute;right:10px;top:10px;z-index:2;width:33px;height:33px;border-radius:50%;display:grid;place-items:center;background:#ffffff80}.heart-btn svg{width:16px}.is-saved svg{fill:currentColor}.heart-btn:hover{background:white}.image-link{position:absolute;bottom:0;left:0;right:0;padding:10px 14px;display:flex;justify-content:space-between;align-items:center;font-size:9px;border-top:1px solid #183e3509;background:#ffffff27;backdrop-filter:blur(8px);transition:background .2s}.image-link svg{width:13px}.image-link:hover{background:#ffffff90}.card-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;font-size:7px;color:#829079;text-transform:uppercase;letter-spacing:.65px;margin-top:15px;line-height:1.5}.card-meta>span:last-child{text-align:right;letter-spacing:0}.product-card h3{font-size:13px;font-weight:500;line-height:1.5;margin-top:7px;max-width:270px}.product-card h3 a:hover{text-decoration:underline;text-underline-offset:4px}.load-wrap{text-align:center;margin-top:45px}.empty{border:1px dashed #bfccb2;text-align:center;border-radius:8px;padding:45px 20px}.empty>svg{width:28px;height:28px;margin-bottom:13px}.empty h3{font-size:21px;font-family:var(--serif);font-weight:400}.empty p{color:var(--muted);font-size:12px;margin:12px 0 22px}.hidden{display:none!important}.ritual-section{background:var(--green);color:#edf2e2;padding:78px 0;position:relative;overflow:hidden}.ritual-section:before{content:"";width:700px;height:700px;position:absolute;border:1px solid #c4d6a616;left:-350px;top:10%;border-radius:50%}.ritual-layout{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.ritual-copy>.eyebrow{color:#b4c79f}.ritual-copy h2{font-size:58px}.ritual-copy h2 em{color:var(--lime)}.ritual-copy>p{max-width:375px;color:#b9cab7;font-size:12px;line-height:1.9;margin-top:24px}.ritual-steps{margin-top:30px}.ritual-steps>button{display:flex;align-items:center;text-align:left;gap:20px;width:100%;padding:18px 0;border-top:1px solid #b8d5a62b;color:#9fb29d;transition:color .2s}.ritual-steps>button.active{color:#f5f7ed}.ritual-steps>button.active>span{background:var(--lime);color:var(--green);border-color:var(--lime)}.ritual-steps>button>span{font-size:9px;width:30px;height:30px;display:grid;place-items:center;border:1px solid #90ab7d55;border-radius:50%}.ritual-steps h3{font-size:17px;font-weight:400;margin-bottom:2px}.ritual-steps p{font-size:10px;color:#9eb69c}.ritual-steps svg{margin-left:auto;width:18px;opacity:.7}.ritual-foot{display:block;font-size:8px;color:#89a181;margin-top:23px;letter-spacing:.8px}.ritual-stage{position:relative;min-height:555px;background:#dbe4ce;border-radius:180px 180px 8px 8px;display:flex;align-items:center;justify-content:center;isolation:isolate;color:var(--ink);padding:90px 30px 145px;overflow:hidden}.stage-label{position:absolute;top:40px;left:0;right:0;text-align:center;font-size:7px;letter-spacing:2px}.stage-halo{position:absolute;inset:100px 20px 105px;border:1px solid #b9c6a7;border-radius:50%;z-index:-1}.stage-halo:after{content:"";position:absolute;inset:15px -10px;border:1px solid #b9c6a77a;border-radius:50%;transform:rotate(20deg)}.ritual-stage>img{max-height:285px;max-width:65%;mix-blend-mode:multiply;object-fit:contain;animation:float-in .45s ease}.stage-caption{position:absolute;bottom:28px;left:30px;right:30px;text-align:center}.stage-caption>span{font-size:9px;color:#7f8e74}.stage-caption h3{font-family:var(--serif);font-size:25px;line-height:1.2;font-weight:400;margin:10px auto 13px;max-width:270px}.stage-caption>button{font-size:10px;display:inline-flex;align-items:center;gap:15px;border-bottom:1px solid #b0bea0;padding-bottom:6px}.stage-caption svg{width:14px}.world-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.world-card{height:440px;position:relative;text-align:left;border-radius:8px;overflow:hidden;padding:25px;isolation:isolate}.world-hair{background:#dce9d8}.world-body{background:#e9ded0}.world-wellness{background:#ede1cf}.world-card:after{content:"";position:absolute;inset:auto -30% -40% -30%;height:110%;border:1px solid #183e3510;border-radius:50%;z-index:-1}.world-no{position:absolute;top:25px;left:25px;font-size:8px;letter-spacing:2px}.world-card>img{max-width:72%;height:270px;object-fit:contain;position:absolute;left:50%;top:54px;transform:translateX(-50%) rotate(8deg);mix-blend-mode:multiply;transition:transform .6s}.world-card:hover>img{transform:translateX(-50%) rotate(0deg) translateY(-8px)}.world-card>div{position:absolute;bottom:25px;left:25px;right:25px;display:flex;justify-content:space-between;align-items:flex-end;gap:10px}.world-card h3{font-family:var(--serif);font-size:28px;font-weight:400;line-height:1.12;max-width:180px}.world-card>div>span{font-size:9px;white-space:nowrap;text-decoration:underline;text-underline-offset:5px}.about-section{padding:72px 0;background:#eeefe5}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.about-art{height:520px;position:relative}.about-art>img{height:100%;width:100%;object-fit:cover;border-radius:8px 8px 150px 8px}.about-stamp{position:absolute;width:110px;height:110px;background:var(--lime);border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;right:-25px;top:30px;font-size:10px;line-height:1.7;letter-spacing:2px;transform:rotate(12deg)}.about-copy h2{font-size:48px}.about-copy>p{font-size:12px;color:var(--muted);line-height:1.9;margin-top:25px}.about-points{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:30px;margin-bottom:26px;border-top:1px solid #cdd7c1;padding-top:23px}.about-points>div>span{font-size:9px;color:#94a17f}.about-points h3{font-size:12px;font-weight:500;margin:8px 0 6px}.about-points p{font-size:10px;line-height:1.8;color:var(--muted)}.faq-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:85px}.faq-section h2{font-size:50px}.faq-section details{padding:21px 0;border-bottom:1px solid var(--line)}.faq-section summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;cursor:pointer}.faq-section summary::-webkit-details-marker{display:none}.faq-section summary:after{content:"+";font-size:22px;font-weight:300}.faq-section details[open] summary:after{content:"−"}.faq-section details p{font-size:11px;color:var(--muted);line-height:1.9;padding:15px 30px 0 0}.contact-section{background:#e4ebdc;padding:75px 0}.contact-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:40px}.contact-heading h2{font-size:61px}.contact-heading>div:last-child{max-width:360px}.contact-heading p{font-size:12px;color:#6b8060;line-height:1.9}.mock-note{display:flex;align-items:center;gap:7px;font-size:9px;margin-top:15px;color:#758368}.mock-note>span:first-child{width:5px;height:5px;background:#91a079;border-radius:50%}.contact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.contact-card{display:block;border:1px solid #c7d3b8;border-radius:8px;padding:23px 20px;transition:background .25s,transform .25s;background:#f8f8f229;min-width:0}.contact-card:hover{background:#f7f8f0;transform:translateY(-5px)}.contact-card-top{display:flex;justify-content:space-between;align-items:center}.contact-card-top>svg{width:24px;height:24px;stroke-width:1.2}.contact-card-top>span{font-size:7px;border:1px solid #bcc9ac;padding:2px 6px;border-radius:15px;color:#7e8e6d}.contact-card h3{font-family:var(--serif);font-size:25px;font-weight:400;margin-top:28px}.contact-card p{font-size:9px;color:#7b8d6b;margin-top:7px}.contact-card strong{font-size:11px;font-weight:500;display:block;margin-top:19px;overflow-wrap:anywhere}.contact-card-link{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:26px;padding-top:15px;border-top:1px solid #ccd6bf;font-size:8px}.contact-card-link svg{width:14px}.footer{padding-top:42px;padding-bottom:23px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:35px}.footer-top>p{font-size:11px;color:var(--muted)}.back-top{display:flex;align-items:center;gap:17px;font-size:10px}.back-top svg{width:16px}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;align-items:center;font-size:8px;color:var(--muted);gap:25px}.footer-bottom>button{font-size:9px;padding:0}.skip{position:fixed;top:-100px;left:15px;z-index:100;background:#fff;padding:10px}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}dialog{border:0;padding:0;color:var(--ink);background:var(--paper);box-shadow:0 30px 100px #0f302f33;max-height:92dvh;border-radius:12px}dialog::backdrop{background:#102e287a;backdrop-filter:blur(6px)}.close-btn{width:37px;height:37px;border-radius:50%;background:#fff;display:grid;place-items:center;flex-shrink:0;z-index:4}.close-btn>svg{width:19px}.product-dialog,.info-dialog{position:fixed}.product-dialog{width:1100px;max-width:94vw}.product-dialog>.close-btn,.info-dialog>.close-btn{position:absolute;top:16px;right:16px}.detail-layout{display:grid;grid-template-columns:.88fr 1.12fr}.detail-visual{min-height:610px;position:relative;display:flex;align-items:center;justify-content:center;padding:100px 40px 110px;isolation:isolate;overflow:hidden}.detail-visual>img{mix-blend-mode:multiply;max-width:82%;max-height:350px;object-fit:contain;z-index:1}.detail-brand{position:absolute;top:30px;left:30px;font-size:19px;letter-spacing:4px;line-height:1.5}.detail-brand>small{font-size:7px;letter-spacing:1.5px;text-transform:uppercase;color:#859477}.detail-orbit{position:absolute;inset:120px -40px 130px;border:1px solid #173f3510;border-radius:50%;transform:rotate(-20deg);z-index:-1}.detail-save{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:9px;font-size:10px;white-space:nowrap;border:1px solid #afbfa0;border-radius:30px;padding:10px 17px}.detail-save svg{width:16px}.detail-copy{padding:50px 38px 30px}.detail-copy h2{font-size:35px;line-height:1.12;letter-spacing:-1px;margin-top:13px;max-width:420px;padding-right:12px}.detail-meta{display:flex;gap:35px;margin-top:23px}.detail-meta>span{font-size:8px;color:var(--muted)}.detail-meta strong{display:block;font-size:11px;font-weight:500;color:var(--ink);margin-top:4px}.detail-tabs{display:flex;gap:20px;border-bottom:1px solid var(--line);margin-top:25px}.detail-tabs button{padding:12px 0;font-size:10px;position:relative;white-space:nowrap}.detail-tabs button[aria-selected=true]:after{content:"";height:2px;background:var(--green);position:absolute;bottom:-1px;left:0;right:0}.detail-tabs button[aria-selected=false]{color:#8b9583}.detail-panel{min-height:180px;padding-top:18px}.detail-panel h3{font-size:12px;font-weight:500;margin-bottom:10px}.detail-panel p{font-size:12px;line-height:1.95;color:#6e7d68}.detail-notice{display:flex;gap:10px;border:1px solid var(--line);border-radius:5px;background:#edf1e5;padding:12px;margin-top:15px}.detail-notice svg{width:15px;height:15px;margin-top:3px;color:#8a9b78}.detail-notice p{font-size:9px;line-height:1.8;color:#839073}.detail-ask{width:100%;margin-top:20px}.share-link{font-size:9px;display:block;margin:14px auto 0;text-decoration:underline;text-underline-offset:4px}.detail-source{font-size:8px;color:#8e9a82;margin-top:20px;text-align:center}.related{padding:30px 35px 35px;border-top:1px solid var(--line)}.related>h3{font-family:var(--serif);font-size:25px;font-weight:400;margin-bottom:22px}.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.compact .product-image{height:230px}.compact .product-card h3{font-size:11px}.saved-dialog{position:fixed;inset:0 0 0 auto;margin:0;width:475px;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0}.drawer-head{position:sticky;top:0;background:var(--paper);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:20px 25px;z-index:3}.drawer-head h2{font-size:28px;margin:0;letter-spacing:-.5px}#saved-content{padding:10px 25px}.saved-item{display:grid;grid-template-columns:75px 1fr 30px;gap:18px;padding:22px 0;border-bottom:1px solid var(--line);align-items:center}.saved-item>img{height:105px;width:75px;object-fit:contain;mix-blend-mode:multiply;background:#e9eee2}.saved-item>div>span{font-size:8px;color:var(--muted)}.saved-name{display:block;text-align:left;padding:0;font-size:12px;line-height:1.6;margin:4px 0 10px}.remove{font-size:8px;color:#8a967e;text-decoration:underline;padding:0}.empty-saved{text-align:center;padding:65px 15px}.empty-saved>svg{width:36px;height:36px;margin-bottom:18px;stroke:#9dad8d}.empty-saved h3{font-family:var(--serif);font-size:27px;font-weight:400;line-height:1.2}.empty-saved p{font-size:11px;color:var(--muted);margin:17px 0 25px}.info-dialog{width:550px;max-width:94vw;padding:50px 32px 32px}.info-dialog h2{font-size:32px;letter-spacing:-1px;line-height:1.2;padding-right:20px;margin:0 0 20px}.info-dialog p{font-size:12px;color:var(--muted);line-height:1.9}.mock-channel{background:var(--sage);border:1px solid #cdd9be;border-radius:7px;padding:20px;display:flex;align-items:center;gap:15px;margin-top:22px}.mock-channel span{font-size:9px;color:var(--muted)}.mock-channel strong{display:block;overflow-wrap:anywhere;font-size:13px;font-weight:400}.info-dialog .button{width:100%;margin-top:20px}.inquiry-product{border-left:2px solid #aabd91;padding-left:15px;font-family:var(--serif);font-size:23px;line-height:1.3;margin:25px 0}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:100;background:var(--green);color:white;border:1px solid #456b55;padding:12px 20px;border-radius:8px;font-size:11px;max-width:90vw;text-align:center;box-shadow:0 10px 35px #163f3520;transition:all .2s}.toast.show{opacity:1;transform:translate(-50%,0)}@keyframes float-in{from{opacity:.4;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.hero{gap:90px}.hero-world{height:625px}.product-image{height:340px}}
@media(max-width:1150px){.wrap{width:calc(100% - 64px)}.nav{gap:20px}.nav nav{gap:20px;font-size:11px}.nav-contact{display:none}.hero{gap:32px;min-height:630px}.hero-world{height:510px}.feature-card{width:280px;left:-20px}.feature-card>img{width:105px}.feature-card h3{font-size:18px}.hero-actions{gap:16px}.hero-actions>.quiet-link{font-size:9px}.hero-proof{margin-top:35px}.hero-proof>p{max-width:120px}.hero-mini{display:none}.hero-line{display:none}.discovery-strip>.wrap{gap:30px}.strip-note{display:none}.product-image{height:265px}.card-meta{font-size:6px}.ritual-layout,.about-layout{gap:60px}.ritual-copy h2{font-size:49px}.ritual-stage{min-height:510px}.world-card{height:390px;padding:20px}.world-card>img{height:240px}.world-card>div{left:20px;right:20px}.world-card h3{font-size:25px}.world-card>div>span{font-size:8px}.about-art{height:490px}.about-copy h2{font-size:41px}.contact-grid{gap:12px}.contact-card{padding:20px 15px}.contact-card strong{font-size:10px}.contact-card-link{font-size:7px}.detail-copy{padding:48px 28px 25px}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.announcement{font-size:9px;padding:7px 15px;letter-spacing:.2px}.announcement-side{display:none}.nav{height:83px;position:relative;align-items:flex-start;padding-top:13px;gap:10px}.brand{font-size:22px;gap:7px}.brand-mark{font-size:33px}.brand small{font-size:6px;margin-top:7px;letter-spacing:2.7px}.nav nav{position:absolute;bottom:9px;left:0;right:0;justify-content:space-between;gap:12px;font-size:9px}.nav-tools{padding-top:7px;gap:15px}.nav-tools select{font-size:10px}.icon-btn svg{width:18px}.icon-btn>span{font-size:8px}.hero{grid-template-columns:1fr;padding-top:35px;padding-bottom:40px;gap:33px;min-height:auto}.hero-copy{padding-top:0}.hero-copy>.eyebrow{font-size:8px;letter-spacing:1.6px}.short-line{width:22px}h1{font-size:68px;margin-top:20px;margin-bottom:20px;letter-spacing:-2.8px}.hero-intro{font-size:12px;max-width:350px;line-height:1.9}.hero-actions{margin-top:25px;gap:18px}.button{padding:13px 17px;font-size:10px;gap:16px}.hero-actions>.quiet-link{font-size:9px}.hero-proof{display:none}.hero-world{height:455px;margin:0 13px 0 15px;border-radius:46% 46% 8px 8px}.hero-image{inset:15px 15px 50px}.hero-image>img{object-position:61% center}.hero-image .photo-type{top:60px;left:20px;font-size:8px;letter-spacing:2px}.orbit-one{inset:55px -13px 80px}.orbit-two{inset:55px -9px 75px}.floating-leaf{right:0;top:43px;width:48px;height:48px}.floating-leaf svg{width:25px;height:25px}.feature-card{width:250px;min-height:142px;left:-15px;bottom:27px}.feature-card>img{width:96px}.feature-card>div{padding:16px 12px}.feature-card h3{font-size:19px;line-height:1.13}.feature-card .eyebrow{font-size:6px;letter-spacing:1px}.feature-arrow{width:26px;height:26px;margin-top:10px}.feature-arrow svg{width:13px}.hero-switch{right:16px;bottom:10px}.hero-switch>span{font-size:5px;letter-spacing:.6px}.vertical-note{right:-19px;top:130px;font-size:6px;letter-spacing:1.3px}.discovery-strip>.wrap{gap:13px;justify-content:space-between;padding-top:17px;padding-bottom:17px}.discovery-strip a{gap:7px;font-size:8px;max-width:100px;line-height:1.6}.discovery-strip svg{width:16px}.section{padding-top:58px;padding-bottom:55px}.section-heading{display:block;margin-bottom:25px}.eyebrow{font-size:7px;letter-spacing:1.5px}h2{font-size:40px;letter-spacing:-1.5px;margin-top:15px}.section-heading>p{font-size:11px;max-width:310px;margin-top:18px}.catalog-toolbar{display:block;margin-bottom:18px}.searchbox{width:100%;padding:11px 0}.searchbox input{font-size:11px}.catalog-tools{justify-content:space-between;margin-top:15px}.catalog-tools select{font-size:9px;padding:7px 10px}.saved-filter{font-size:9px;padding:5px 0}.saved-filter svg{width:14px}.filters{gap:6px;margin-bottom:18px}.filter{font-size:9px;padding:7px 11px}.catalog-meta{font-size:7px;gap:15px;line-height:1.6}.catalog-meta>span:last-child{text-align:right}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 12px}.product-image{height:245px;border-radius:6px}.product-index{font-size:6px;letter-spacing:.8px;top:12px;left:10px}.heart-btn{width:28px;height:28px;right:6px;top:6px}.heart-btn svg{width:13px}.product-image>a:not(.image-link){padding:38px 14px 41px}.product-image img{max-width:85%}.image-link{padding:10px;font-size:8px}.image-link svg{width:12px}.card-meta{font-size:6px;letter-spacing:.2px;gap:5px;margin-top:11px;flex-wrap:wrap}.card-meta>span:last-child{text-align:left;font-size:6px}.product-card h3{font-size:11px;margin-top:6px;line-height:1.6;font-weight:500}.load-wrap{margin-top:30px}.ritual-section{padding:42px 0 35px}.ritual-layout{grid-template-columns:1fr;gap:35px}.ritual-copy h2{font-size:45px}.ritual-copy>p{font-size:11px;margin-top:19px;max-width:330px}.ritual-steps{margin-top:24px}.ritual-steps>button{padding:15px 0;gap:16px}.ritual-steps h3{font-size:16px}.ritual-steps p{font-size:9px}.ritual-foot{display:none}.ritual-stage{min-height:470px;border-radius:160px 160px 8px 8px;padding-top:80px;padding-bottom:135px}.ritual-stage>img{max-height:250px}.stage-label{font-size:6px;top:30px}.stage-caption h3{font-size:25px;max-width:240px}.stage-caption>button{font-size:9px}.world-grid{grid-template-columns:1fr;gap:15px}.world-card{height:275px;padding:22px}.world-no{top:22px;left:22px;font-size:7px}.world-card>img{height:215px;max-width:49%;left:auto;right:13px;top:25px;transform:rotate(9deg)}.world-card:hover>img{transform:rotate(0deg) translateY(-5px)}.world-card>div{display:block;bottom:24px;left:22px;right:auto;max-width:48%}.world-card h3{font-size:29px;max-width:160px}.world-card>div>span{display:block;font-size:9px;margin-top:15px}.about-section{padding:36px 0 42px}.about-layout{grid-template-columns:1fr;gap:35px}.about-art{height:380px;margin-right:15px}.about-art>img{border-radius:8px 8px 110px 8px}.about-stamp{right:-15px;top:23px;width:90px;height:90px;font-size:8px}.about-copy h2{font-size:39px}.about-copy>p{font-size:11px;margin-top:21px}.about-points{gap:20px;margin-top:25px;padding-top:20px}.about-points h3{font-size:11px}.about-points p{font-size:9px}.about-copy .quiet-link{font-size:10px}.faq-section{grid-template-columns:1fr;gap:25px}.faq-section h2{font-size:41px}.faq-section details{padding:18px 0}.faq-section summary{font-size:11px;gap:15px}.faq-section details p{font-size:10px;padding-top:13px}.contact-section{padding:43px 0}.contact-heading{display:block;margin-bottom:26px}.contact-heading h2{font-size:49px}.contact-heading>div:last-child{max-width:335px;margin-top:23px}.contact-heading p{font-size:11px}.mock-note{font-size:8px;line-height:1.7}.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.contact-card{padding:18px 14px}.contact-card-top>svg{width:21px;height:21px}.contact-card-top>span{font-size:6px;padding:1px 5px}.contact-card h3{font-size:24px;margin-top:22px}.contact-card p{font-size:8px;min-height:24px;line-height:1.5}.contact-card strong{font-size:9px;margin-top:13px;line-height:1.8;min-height:32px}.contact-card-link{margin-top:14px;padding-top:12px;font-size:7px;gap:6px}.contact-card-link svg{width:12px}.footer{padding-top:30px;padding-bottom:22px}.footer-top{flex-wrap:wrap;gap:23px;padding-bottom:25px}.footer-top>p{font-size:9px;text-align:right;max-width:140px;margin-left:auto}.back-top{font-size:9px;width:100%;justify-content:flex-end;gap:10px}.back-top svg{width:14px}.footer-bottom{font-size:7px;flex-wrap:wrap;gap:14px}.footer-bottom>span:nth-child(2){order:3;width:100%}.footer-bottom button{margin-left:auto;font-size:8px}.detail-layout{grid-template-columns:1fr}.detail-visual{min-height:345px;padding:70px 35px 65px}.detail-visual>img{max-height:220px;max-width:65%}.detail-brand{top:19px;left:20px;font-size:14px;letter-spacing:3px}.detail-brand small{font-size:6px;letter-spacing:1px}.detail-orbit{inset:75px -30px 85px}.detail-save{bottom:16px;font-size:8px;padding:7px 14px}.detail-save svg{width:13px}.detail-copy{padding:25px 22px}.detail-copy h2{font-size:29px;letter-spacing:-.8px;line-height:1.15;padding:0}.detail-meta{margin-top:20px;gap:25px}.detail-meta>span{font-size:7px}.detail-meta strong{font-size:10px}.detail-tabs{gap:18px;margin-top:20px}.detail-tabs button{font-size:9px;padding:12px 0}.detail-panel{min-height:0;padding-top:18px}.detail-panel h3{font-size:11px}.detail-panel p{font-size:11px;line-height:1.95}.detail-notice{padding:10px;gap:8px;margin-top:18px}.detail-notice p{font-size:8px}.detail-notice svg{width:13px}.detail-source{font-size:7px}.detail-ask{font-size:10px}.share-link{font-size:8px}.related{padding:25px 20px}.related>h3{font-size:24px}.related-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.compact .product-image{height:160px}.compact .product-index,.compact .image-link{display:none}.compact .product-image>a:not(.image-link){padding:32px 8px 15px}.compact .heart-btn{width:23px;height:23px;right:5px;top:5px}.compact .heart-btn svg{width:11px}.compact .card-meta{font-size:5px}.compact h3{font-size:9px;line-height:1.5}.compact .card-meta>span:last-child{display:none}.product-dialog{max-height:94dvh}.info-dialog{padding:48px 23px 25px}.info-dialog h2{font-size:29px}.info-dialog p{font-size:11px}.mock-channel{padding:17px;gap:12px}.mock-channel strong{font-size:12px}.mock-channel span{font-size:8px}.inquiry-product{font-size:23px}.toast{bottom:20px;width:max-content;font-size:10px}.saved-dialog{width:100vw}.saved-item{grid-template-columns:70px 1fr 25px;gap:13px}.saved-name{font-size:12px}.empty-saved h3{font-size:28px}}
@media(max-width:380px){h1{font-size:61px}.hero-actions{gap:12px}.hero-actions>.quiet-link{font-size:8px}.hero-world{height:420px}.feature-card{width:229px}.feature-card>img{width:84px}.product-image{height:220px}.contact-card{padding:16px 12px}.contact-card-link{font-size:6px}.detail-tabs{gap:13px}.detail-tabs button{font-size:8px}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.related-grid>.product-card:last-child{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.hero{overflow:clip}.hero-image .photo-type{top:auto;bottom:170px;left:26px}

/* Readability and catalogue controls */
:root{--muted:#586e60}
[hidden]{display:none!important}
.searchbox{gap:12px;min-height:52px}
.searchbox input{min-width:0;font-size:14px}
.searchbox input::-webkit-search-cancel-button{-webkit-appearance:none}
.clear-search{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:50%;background:var(--sage)}
.clear-search svg{width:17px;height:17px}
.clear-search:hover{background:#d6e2cb}
.catalog-meta{display:flex;align-items:center;flex-wrap:wrap;font-size:11px;gap:10px 18px}
.catalog-meta>span:last-child{margin-left:auto}
.clear-filters{font-size:12px;text-decoration:underline;text-underline-offset:4px;min-height:44px;padding:0 4px}
.filter{min-height:44px;font-size:12px;padding:10px 15px}
.saved-filter{min-height:44px;font-size:12px}
.catalog-tools select{min-height:44px;font-size:12px}
.heart-btn{width:44px;height:44px;right:6px;top:6px}
.heart-btn svg{width:18px;height:18px}
.card-meta,.card-meta>span:last-child{font-size:10px;letter-spacing:.2px;line-height:1.6}
.product-card h3{font-size:14px;line-height:1.5}
.image-link{min-height:44px;font-size:11px}
.button{min-height:48px;font-size:12px}
.close-btn{width:44px;height:44px}
.hero-intro,.section-heading>p,.ritual-copy>p,.about-copy>p,.contact-heading p{font-size:14px;line-height:1.85}
.about-points h3{font-size:14px;line-height:1.5}
.about-points p,.faq-section details p{font-size:13px;line-height:1.85}
.faq-section summary{font-size:14px;min-height:44px}
.contact-card p,.contact-card strong{font-size:12px}
.contact-card-link{font-size:11px;min-height:44px}
.mock-note{font-size:12px;line-height:1.7}
.detail-panel p,.info-dialog p{font-size:14px;line-height:1.85}
.detail-tabs button{min-height:48px;font-size:12px;line-height:1.45;white-space:normal}
.detail-meta>span{font-size:10px}.detail-meta strong{font-size:12px}
.detail-notice p{font-size:12px;line-height:1.75}.detail-source{font-size:10px;line-height:1.7}
.detail-save,.share-link,.remove{min-height:44px;font-size:12px}
.saved-name{font-size:14px}.empty-saved p{font-size:14px}
.empty-results p{font-size:14px}
.compact .card-meta,.compact .card-meta>span:last-child{font-size:9px}
.compact.product-card h3{font-size:12px}
@media(max-width:760px){
 html{scroll-padding-top:125px}
 .nav{height:105px;padding-top:12px}
 .nav nav{bottom:0;gap:7px;font-size:11px;min-height:44px}
 .nav nav a{display:flex;align-items:center;justify-content:center;min-height:44px;text-align:center;line-height:1.35}
 .nav-tools{padding-top:0;gap:8px}
 .nav-tools select,.nav-tools .icon-btn{min-height:44px;font-size:12px}
 .nav-tools select{min-width:46px}
 .hero-copy>.eyebrow,.eyebrow{font-size:9px}
 .hero-actions{gap:16px;flex-wrap:wrap}
 .hero-actions>.quiet-link{font-size:12px;min-height:44px;display:flex;align-items:center}
 .hero-intro{font-size:14px;max-width:100%}
 .section-heading>p,.ritual-copy>p,.about-copy>p{font-size:14px;max-width:100%}
 .catalog-toolbar{margin-bottom:12px}
 .searchbox{padding:7px 0}.searchbox input{font-size:16px}
 .catalog-tools{margin-top:10px;gap:10px;flex-wrap:wrap}
 .catalog-tools select,.saved-filter{font-size:12px}
 .filters{gap:8px;margin-bottom:12px}
 .filter{font-size:12px;padding:9px 13px}
 .catalog-meta{font-size:11px;margin-bottom:20px}
 .catalog-meta>span:last-child{flex-basis:100%;margin-left:0;text-align:left}
 .product-grid{gap:25px 14px}.product-card h3{font-size:13px;line-height:1.55}
 .card-meta,.card-meta>span:last-child{font-size:9px}
 .product-index{font-size:8px}
 .heart-btn{width:44px;height:44px;right:3px;top:3px}.heart-btn svg{width:17px;height:17px}
 .product-image>a:not(.image-link){padding-top:54px}.image-link{font-size:10px}
 .ritual-steps h3{font-size:18px}.ritual-steps p{font-size:13px;line-height:1.6}
 .stage-caption>button{font-size:12px;min-height:44px}
 .about-points{grid-template-columns:1fr;gap:22px}.about-points h3{font-size:15px}.about-points p{font-size:13px}
 .about-copy .quiet-link{font-size:13px;min-height:44px;display:inline-flex;align-items:center}
 .faq-section summary{font-size:14px;line-height:1.6}.faq-section details p{font-size:14px;padding-right:0}
 .contact-heading p{font-size:14px}.mock-note{font-size:12px}
 .contact-grid{grid-template-columns:1fr;gap:14px}.contact-card{padding:23px}
 .contact-card h3{font-size:29px;margin-top:18px}.contact-card p{font-size:13px;min-height:0}
 .contact-card strong{font-size:14px;min-height:0;overflow-wrap:anywhere}
 .contact-card-top>span{font-size:10px}.contact-card-link{font-size:12px}
 .detail-copy{padding:26px 22px}.detail-tabs{gap:12px}.detail-tabs button{flex:1;font-size:12px}
 .detail-panel p{font-size:15px}.detail-notice p{font-size:12px}
 .detail-save{font-size:12px}.detail-source{font-size:10px}.detail-ask{font-size:12px}
 .related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
 .compact .heart-btn{width:40px;height:40px}.compact .heart-btn svg{width:16px;height:16px}
 .compact.product-card h3{font-size:12px}.compact .card-meta{font-size:9px}
 .info-dialog p,.empty-saved p{font-size:14px}.saved-name{font-size:14px}.saved-item>div>span{font-size:11px}
 .footer-top>p,.back-top,.footer-bottom,.footer-bottom button{font-size:11px;line-height:1.7}
 .footer-bottom button{min-height:44px}.toast{font-size:12px}
}
@media(max-width:380px){.nav nav{font-size:10px}.detail-tabs button{font-size:11px}.contact-card{padding:22px}}

/* Keep the close control reachable while reading a long product. */
.product-dialog>.close-btn{position:sticky;top:16px;margin:16px 16px -60px auto;box-shadow:0 2px 12px #123f3518}

/* Sunway Atelier — an editorial system for everyday care. */
:root {
  --paper: #f8f5ef;
  --ink: #173e33;
  --green: #173e33;
  --lime: #e4dfc4;
  --sage: #e9ecdf;
  --muted: #606e62;
  --line: #d9ddd1;
  --gold: #a2946a;
  --serif: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --sans: 'Manrope', 'Segoe UI', Arial, sans-serif;
}
html { scroll-padding-top: 112px; }
body { font-size: 15px; line-height: 1.75; }
::selection { background: #dce2cd; color: var(--ink); }
.wrap { width: calc(100% - 112px); max-width: 1360px; }
h1, h2 { letter-spacing: -.055em; line-height: 1.08; }
h1 em, h2 em { color: #7a8060; }
.eyebrow { font-size: 10px; letter-spacing: .19em; font-weight: 500; }
button, a, summary, select { touch-action: manipulation; }
:is(button, a, input, select, summary):focus-visible { outline: 2px solid #9c8048; outline-offset: 5px; }
button, a { transition: color .2s ease, background .2s ease, border-color .2s ease, transform .25s ease; }
.announcement { min-height: 34px; padding: 6px 30px; font-size: 10px; letter-spacing: .07em; background: #173e33; }
.live-dot { width: 4px; height: 4px; background: #d7caa3; }
.announcement-side { right: 56px; font-size: 8px; letter-spacing: .18em; color: #d3d8c7; }
.header { background: #f8f5eff2; border-color: #173e3312; backdrop-filter: blur(20px); }
.header.has-scrolled { box-shadow: 0 5px 26px #173e3308; }
.nav { height: 92px; gap: 32px; }
.brand { font-size: 26px; letter-spacing: .13em; gap: 10px; }
.brand-mark { color: #a59b73; font-size: 39px; }
.brand small { font-size: 7px; letter-spacing: .35em; margin-top: 10px; }
.nav nav { font-size: 13px; gap: 32px; }
.nav nav a { padding: 14px 0; }
.nav nav a:after { bottom: 7px; height: 1px; background: #9e956e; }
.nav nav a.active:after { width: 100%; }
.nav nav a.is-current:after { width: 100%; }
.nav-tools { gap: 19px; }
.nav-tools select { font-size: 12px; min-height: 44px; min-width: 49px; }
.icon-btn { min-width: 48px; min-height: 44px; }
.icon-btn > span { font-size: 10px; background: #e8ebdf; padding: 1px 6px; }
.nav-contact { display: flex; font-size: 12px; min-height: 44px; padding: 9px 17px; border-radius: 2px; border-color: #bec5b4; gap: 24px; }
.nav-contact:hover { background: var(--ink); border-color: var(--ink); color: var(--paper); }

/* An asymmetric cover: airy typography and one uninterrupted portrait. */
.hero { grid-template-columns: 1fr 1.04fr; gap: 72px; min-height: 760px; padding-top: 42px; padding-bottom: 76px; overflow: visible; }
.hero-copy { padding: 8px 0 32px; }
.hero-copy > .eyebrow { gap: 14px; font-size: 10px; letter-spacing: .17em; }
.short-line { width: 34px; background: #a99d76; }
h1 { font-size: clamp(70px, 7.15vw, 108px); margin: 30px 0 27px; }
.hero-intro { max-width: 410px; font-size: 15px; line-height: 1.9; color: #5a6b5f; }
.hero-actions { gap: 27px; margin-top: 34px; flex-wrap: wrap; }
.button { min-height: 54px; border-radius: 2px; font-size: 13px; padding: 15px 24px; gap: 26px; letter-spacing: .01em; }
.button svg { width: 18px; height: 18px; }
.button:hover { transform: translateY(-2px); }
.primary { background: #173e33; color: #f8f5ef; }
.primary:hover { background: #295342; }
.secondary { border-color: #adb69d; }
.secondary:hover { background: #e9eddf; }
.quiet-link, .hero-actions > .quiet-link { min-height: 44px; display: inline-flex; align-items: center; font-size: 12px; text-decoration-thickness: 1px; text-underline-offset: 7px; }
.hero-proof { margin-top: 50px; gap: 15px; }
.leaf-seal { width: 40px; height: 40px; border-color: #c9ceba; }
.leaf-seal svg { width: 18px; }
.hero-proof > p { font-size: 11px; line-height: 1.7; max-width: 180px; }
.hero-line { height: 34px; background: #d1d6c7; }
.hero-mini { font-size: 9px; line-height: 1.9; letter-spacing: .12em; }
.hero-mini > b { font-size: 8px; letter-spacing: .1em; }
.hero-world { height: 620px; margin-left: 0; background: #dce2d6; border-radius: 140px 4px 4px 4px; }
.hero-world:before { inset: 13px; z-index: 1; border: 1px solid #f8f5ef55; background: none; border-radius: 129px 2px 2px 2px; pointer-events: none; }
.hero-image { inset: 0; border-radius: inherit; }
.hero-image > img { object-position: 70% center; filter: saturate(.77); }
.image-shade { background: linear-gradient(0deg, #14352a60, transparent 42%); }
.hero-image .photo-type { top: 39px; bottom: auto; left: auto; right: 28px; font-size: 8px; letter-spacing: .24em; color: #f8f5ef; text-align: right; }
.orbit, .floating-leaf, .vertical-note { display: none; }
.feature-card { left: -37px; bottom: 37px; width: 295px; min-height: 156px; border: 1px solid #faf7f1d9; background: #f8f5eff2; backdrop-filter: blur(15px); border-radius: 3px; box-shadow: 0 16px 38px #173e3312; }
.feature-card > img { width: 99px; object-fit: contain; padding: 12px 6px; background: #e8eadf; }
.feature-card > div { padding: 18px 17px 14px; }
.feature-card .eyebrow { font-size: 8px; letter-spacing: .11em; }
.feature-card h3 { margin-top: 7px; font-size: 21px; line-height: 1.14; letter-spacing: -.03em; }
.feature-arrow { width: 44px; height: 44px; margin-top: 9px; border: 0; border-radius: 0; justify-content: start; }
.feature-arrow svg { width: 19px; height: 19px; }
.feature-arrow:hover { transform: translate(3px, -3px); }
.hero-switch { right: 25px; bottom: 19px; color: #f6f4e9; gap: 16px; }
.hero-switch > span { font-size: 7px; letter-spacing: .14em; }
.hero-switch > div { gap: 3px; }
.hero-switch button { width: 30px; height: 30px; }
.hero-switch button:before { left: 11px; top: 12px; width: 5px; height: 5px; }
.hero-switch button.active:before { background: #ede7ca; transform: scale(1.35); }
.discovery-strip { border-color: #d8ddcf; background: #eeeee3; }
.discovery-strip > .wrap { gap: 52px; padding-block: 22px; }
.discovery-strip a { min-height: 28px; gap: 13px; font-size: 13px; }
.discovery-strip svg { width: 18px; height: 18px; color: #8a9272; }
.strip-note { font-size: 8px; color: #68775e; letter-spacing: .16em; }

/* Catalogue: precision, generous product space and quiet controls. */
.section { padding-block: 112px; }
.section-heading { margin-bottom: 43px; gap: 64px; }
h2 { font-size: clamp(42px, 4.2vw, 64px); margin-top: 20px; }
.section-heading > p { max-width: 330px; font-size: 14px; line-height: 1.85; padding-bottom: 4px; }
.catalog-toolbar { gap: 35px; margin-bottom: 23px; align-items: center; }
.searchbox { width: 480px; min-height: 56px; padding: 6px 0; border-bottom: 1px solid #9fae92; gap: 14px; }
.searchbox > svg { width: 20px; height: 20px; }
.searchbox input { font-size: 14px; line-height: 1.7; padding: 6px 0; }
.searchbox:focus-within { border-bottom-color: #173e33; box-shadow: 0 1px 0 #173e33; }
.clear-search { width: 44px; height: 44px; flex-basis: 44px; background: transparent; }
.clear-search:hover { background: #e8ecdf; }
.catalog-tools { gap: 25px; }
.catalog-tools select { font-size: 12px; min-height: 44px; padding: 9px 13px; border-color: #ccd4c3; background: #ffffff30; border-radius: 2px; }
.saved-filter { font-size: 12px; min-height: 44px; gap: 8px; }
.saved-filter svg { width: 17px; height: 17px; }
.filters { gap: 8px; margin-bottom: 18px; }
.filter { min-height: 44px; padding: 9px 17px; font-size: 12px; border-radius: 2px; border-color: #d0d7c7; background: #fdfaf51f; }
.filter.active { background: #173e33; border-color: #173e33; }
.filter:hover { border-color: #758464; }
.catalog-meta { font-size: 11px; line-height: 1.6; margin-bottom: 25px; min-height: 24px; color: #62745f; }
.clear-filters { font-size: 12px; }
.product-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 38px 24px; }
.product-card { position: relative; }
.product-image { height: auto; aspect-ratio: 4 / 5; border-radius: 3px; border: 1px solid #173e3308; background: #e9eddf; }
.cat-face .product-image, .detail-visual.cat-face { background: #e9eddf; }
.cat-body .product-image, .detail-visual.cat-body { background: #eee4d9; }
.cat-hair .product-image, .detail-visual.cat-hair { background: #e2e9dc; }
.cat-hygiene .product-image, .detail-visual.cat-hygiene { background: #ece9dc; }
.cat-wellness .product-image, .detail-visual.cat-wellness { background: #ede7d8; }
.cat-device .product-image, .detail-visual.cat-device { background: #e7e9e4; }
.product-image > a:not(.image-link) { padding: 52px 25px 64px; }
.product-image img { width: auto; height: auto; max-width: 82%; max-height: 100%; transition: transform .75s cubic-bezier(.2,.65,.2,1); }
.product-image:hover img { transform: translateY(-5px) scale(1.05); }
.product-index { top: 18px; left: 16px; font-size: 8px; letter-spacing: .12em; color: #68785d; }
.heart-btn { width: 44px; height: 44px; right: 7px; top: 7px; background: #fcfaf460; border-radius: 50%; }
.heart-btn svg { width: 18px; height: 18px; }
.heart-btn:hover { background: #fbf9f1; }
.heart-btn.is-saved { background: #f8f5ef; color: #173e33; }
.image-link { min-height: 46px; padding: 11px 16px; font-size: 11px; background: #f8f5ef50; border-top: 1px solid #173e330d; backdrop-filter: none; }
.image-link svg { width: 16px; height: 16px; }
.image-link:hover { background: #f8f5efbd; }
.card-meta, .card-meta > span:last-child { font-size: 9px; line-height: 1.6; letter-spacing: .04em; color: #67765e; }
.card-meta { margin-top: 17px; gap: 12px; }
.product-card h3 { font-size: 15px; line-height: 1.6; font-weight: 400; margin-top: 7px; max-width: 290px; }
.product-card h3 a:hover { text-decoration-color: #9d9b78; text-underline-offset: 5px; }
.load-wrap { margin-top: 48px; }
.load-wrap .button { min-width: 265px; }
.empty { border: 1px solid #cbd4bf; padding: 60px 25px; border-radius: 2px; }
.empty h3 { font-size: 30px; line-height: 1.25; }
.empty p { font-size: 14px; }

/* A calm, tactile contrast for the routine. */
.ritual-section { background: #173e33; padding: 92px 0; }
.ritual-section:before { width: 860px; height: 860px; left: -590px; top: -90px; border-color: #dce5ca0c; }
.ritual-layout { grid-template-columns: 1fr .95fr; gap: 112px; }
.ritual-copy > .eyebrow { color: #d3d8bd; }
.ritual-copy h2 { font-size: clamp(46px, 4.4vw, 66px); }
.ritual-copy h2 em { color: #d9d9b5; }
.ritual-copy > p { font-size: 14px; line-height: 1.9; color: #c3cdbb; max-width: 420px; margin-top: 29px; }
.ritual-steps { margin-top: 37px; }
.ritual-steps > button { padding: 20px 0; gap: 19px; border-color: #d5e0c72b; color: #c4cebc; }
.ritual-steps > button > span { width: 35px; height: 35px; font-size: 10px; border-color: #d1dcc850; }
.ritual-steps > button.active > span { background: #d7d6b5; border-color: #d7d6b5; }
.ritual-steps h3 { font-family: var(--serif); font-size: 23px; line-height: 1.3; letter-spacing: -.025em; }
.ritual-steps p { font-size: 12px; line-height: 1.7; color: #bdc9b5; margin-top: 5px; }
.ritual-steps > button > svg { width: 20px; height: 20px; opacity: .85; }
.ritual-foot { display: block; font-size: 10px; color: #c1cbb7; margin-top: 28px; }
.ritual-stage { min-height: 610px; padding: 96px 36px 175px; background: #e8e9d9; border: 1px solid #edf0df; border-radius: 3px; }
.stage-label { top: 32px; font-size: 9px; letter-spacing: .14em; color: #68775a; }
.stage-halo { inset: 97px 44px 157px; border-color: #aeb89b55; border-radius: 50%; }
.stage-halo:after { border-color: #aeb89b26; inset: 20px -16px; }
.ritual-stage > img { max-height: 300px; max-width: 64%; }
.stage-caption { bottom: 32px; left: 30px; right: 30px; }
.stage-caption > span { font-size: 11px; color: #63725c; }
.stage-caption h3 { max-width: 320px; font-size: 30px; margin: 12px auto 15px; letter-spacing: -.035em; }
.stage-caption > button { font-size: 12px; min-height: 44px; padding-bottom: 3px; border-color: #a5b093; gap: 20px; }

/* Product worlds use a different rhythm from the collection. */
.world-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.world-card { height: 465px; border-radius: 3px; padding: 27px; border: 1px solid #173e3307; }
.world-hair { background: #e1e7d9; }
.world-body { background: #e9e2d7; }
.world-wellness { background: #eae4d3; }
.world-card:after { border-color: #173e3310; height: 88%; bottom: -48%; }
.world-no { top: 26px; left: 26px; font-size: 9px; letter-spacing: .15em; }
.world-card > img { top: 60px; height: 265px; max-width: 69%; transform: translateX(-50%) rotate(5deg); }
.world-card:hover > img { transform: translateX(-50%) rotate(0) translateY(-6px); }
.world-card > div { bottom: 29px; left: 26px; right: 26px; display: block; }
.world-card h3 { max-width: 240px; font-size: 34px; letter-spacing: -.04em; line-height: 1.08; }
.world-card > div > span { display: inline-block; margin-top: 16px; font-size: 11px; text-underline-offset: 6px; }
.about-section { background: #eeeee4; padding: 92px 0; }
.about-layout { grid-template-columns: 1.06fr 1fr; gap: 96px; }
.about-art { height: auto; aspect-ratio: 1350 / 1150; margin-right: 0; background: #f2f0e8; border-radius: 3px; }
.about-art > img { width: 100%; height: 100%; object-fit: contain; border-radius: 3px; }
.about-stamp { width: 90px; height: 90px; right: -24px; top: 24px; font-size: 8px; letter-spacing: .13em; background: #d8d7b6; box-shadow: 0 4px 20px #173e3309; }
.about-copy h2 { font-size: clamp(41px, 3.7vw, 56px); }
.about-copy > p { font-size: 14px; line-height: 1.9; margin-top: 28px; }
.about-points { grid-template-columns: 1fr; gap: 19px; margin-top: 28px; margin-bottom: 25px; padding-top: 24px; border-color: #c9d0bc; }
.about-points > div { padding-left: 35px; position: relative; }
.about-points > div > span { position: absolute; left: 0; top: 3px; font-size: 10px; color: #768366; }
.about-points h3 { font-size: 13px; line-height: 1.5; margin: 0 0 5px; font-weight: 500; }
.about-points p { font-size: 12px; line-height: 1.85; }
.about-copy .quiet-link { font-size: 12px; }
.faq-section { grid-template-columns: .8fr 1.2fr; gap: 105px; }
.faq-section h2 { font-size: clamp(43px, 4vw, 60px); }
.faq-section details { border-color: #cfd7c5; padding: 23px 0; }
.faq-section details:first-child { border-top: 1px solid #cfd7c5; }
.faq-section summary { font-size: 14px; font-weight: 400; min-height: 44px; line-height: 1.65; }
.faq-section summary:after { color: #8e9470; font-size: 25px; flex-shrink: 0; }
.faq-section details p { font-size: 13px; line-height: 1.9; padding: 16px 35px 3px 0; }
.contact-section { background: #e4e8da; padding: 88px 0; }
.contact-heading { align-items: flex-end; gap: 90px; margin-bottom: 43px; }
.contact-heading h2 { font-size: clamp(45px, 4.4vw, 66px); }
.contact-heading > div:last-child { max-width: 365px; }
.contact-heading p { color: #566c55; font-size: 14px; line-height: 1.85; }
.mock-note { font-size: 11px; color: #617154; margin-top: 18px; align-items: flex-start; line-height: 1.8; }
.mock-note > span:first-child { flex-shrink: 0; margin-top: 7px; background: #7a8864; }
.contact-grid { grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px; }
.contact-card { padding: 26px 21px 15px; border: 1px solid #bcc8ad; border-radius: 2px; background: #f8f5ef25; }
.contact-card:hover { background: #f8f5ef9c; transform: translateY(-3px); }
.contact-card-top > svg { width: 23px; height: 23px; color: #365139; }
.contact-card-top > span { font-size: 8px; border-radius: 2px; padding: 1px 6px; color: #5a6b50; border-color: #aebb9e; }
.contact-card h3 { font-size: 30px; line-height: 1.25; margin-top: 28px; letter-spacing: -.035em; }
.contact-card p { font-size: 11px; line-height: 1.7; color: #5f7353; margin-top: 9px; }
.contact-card strong { font-size: 12px; line-height: 1.8; margin-top: 19px; font-weight: 400; color: #365139; }
.contact-card-link { min-height: 49px; font-size: 11px; padding-top: 12px; margin-top: 25px; border-color: #bfcbaf; }
.contact-card-link svg { width: 16px; height: 16px; }
.footer { padding-top: 47px; padding-bottom: 26px; }
.footer-top { padding-bottom: 38px; gap: 40px; }
.footer-top > p { font-size: 12px; max-width: 325px; line-height: 1.85; }
.back-top { font-size: 12px; min-height: 44px; gap: 20px; }
.footer-bottom { font-size: 10px; line-height: 1.8; gap: 25px; padding-top: 24px; }
.footer-bottom > button { font-size: 10px; min-height: 44px; }

/* Product reading is an editorial spread, with controls kept within reach. */
dialog { background: #f8f5ef; border-radius: 4px; box-shadow: 0 28px 120px #09221844; }
dialog::backdrop { background: #102b258c; backdrop-filter: blur(9px); }
.product-dialog { width: 1120px; max-width: calc(100vw - 48px); max-height: 92dvh; }
.close-btn { width: 44px; height: 44px; border: 1px solid #173e3312; background: #fcfaf4f5; }
.close-btn:hover { background: #e6ead9; transform: rotate(8deg); }
.product-dialog > .close-btn { position: sticky; top: 16px; margin: 16px 16px -60px auto; box-shadow: 0 3px 14px #173e3310; }
.detail-layout { grid-template-columns: .92fr 1.08fr; }
.detail-visual { min-height: 650px; padding: 115px 42px 125px; }
.detail-visual > img { max-height: 370px; max-width: 82%; }
.detail-brand { top: 35px; left: 35px; font-size: 20px; letter-spacing: .18em; }
.detail-brand > small { font-size: 9px; color: #5d7153; letter-spacing: .1em; }
.detail-orbit { border-color: #173e3310; inset: 155px -50px 170px; }
.detail-save { min-height: 46px; padding: 10px 18px; border-color: #a9b79a; border-radius: 2px; background: #f8f5ef40; font-size: 12px; bottom: 32px; }
.detail-save svg { width: 17px; height: 17px; }
.detail-save:hover { background: #f8f5ef; }
.detail-copy { padding: 63px 42px 32px; }
.detail-copy > .eyebrow { font-size: 9px; }
.detail-copy h2 { font-size: 37px; letter-spacing: -.04em; line-height: 1.14; margin-top: 18px; padding-right: 12px; }
.detail-meta { margin-top: 26px; gap: 34px; }
.detail-meta > span { font-size: 10px; color: #617357; }
.detail-meta strong { font-size: 12px; line-height: 1.7; margin-top: 5px; font-weight: 500; }
.detail-tabs { gap: 22px; margin-top: 28px; border-color: #ccd5c0; }
.detail-tabs button { font-size: 12px; min-height: 50px; padding: 12px 0; line-height: 1.6; }
.detail-tabs button[aria-selected=false] { color: #617357; }
.detail-tabs button[aria-selected=true]:after { height: 2px; background: #617452; }
.detail-panel { padding-top: 23px; min-height: 200px; }
.detail-panel h3 { font-size: 12px; font-weight: 500; margin-bottom: 12px; }
.detail-panel p { font-size: 14px; line-height: 1.95; color: #52684f; }
.detail-notice { padding: 15px; border: 1px solid #d2dac7; background: #edf0e3; border-radius: 2px; margin-top: 21px; }
.detail-notice p { font-size: 11px; line-height: 1.85; color: #5c7053; }
.detail-notice svg { color: #6b7f5d; }
.detail-ask { min-height: 52px; font-size: 12px; margin-top: 25px; }
.share-link { font-size: 12px; min-height: 44px; margin: 9px auto 0; }
.detail-source { font-size: 10px; line-height: 1.85; color: #627359; margin-top: 14px; }
.related { padding: 35px 40px 40px; border-color: #d2dac7; }
.related > h3 { font-size: 30px; letter-spacing: -.035em; margin-bottom: 25px; }
.related-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 25px; }
.compact .product-image { height: 235px; aspect-ratio: auto; }
.compact.product-card h3 { font-size: 13px; line-height: 1.6; }
.compact .card-meta, .compact .card-meta > span:last-child { font-size: 9px; }
.saved-dialog { border-radius: 0; width: 500px; }
.drawer-head { background: #f8f5eff5; backdrop-filter: blur(15px); padding: 25px 29px; border-color: #d1dac4; }
.drawer-head h2 { font-size: 31px; letter-spacing: -.04em; }
#saved-content { padding: 6px 29px 30px; }
.saved-item { grid-template-columns: 77px 1fr 32px; gap: 20px; padding: 23px 0; border-color: #d1dac4; }
.saved-item > img { height: 108px; width: 77px; border-radius: 2px; background: #e9eddf; }
.saved-item > div > span { font-size: 10px; color: #5f7255; }
.saved-name { font-size: 14px; line-height: 1.7; }
.remove { min-height: 44px; font-size: 12px; color: #5c7053; }
.saved-item > button { min-height: 44px; }
.empty-saved { padding: 72px 17px; }
.empty-saved h3 { font-size: 32px; letter-spacing: -.035em; }
.empty-saved p { font-size: 14px; line-height: 1.9; }
.info-dialog { width: 590px; padding: 60px 38px 34px; max-width: calc(100vw - 40px); }
.info-dialog h2 { font-size: 34px; line-height: 1.2; letter-spacing: -.035em; }
.info-dialog p { font-size: 14px; line-height: 1.95; }
.mock-channel { border-radius: 2px; padding: 21px; border-color: #cad4bd; background: #e9eddf; }
.mock-channel span { font-size: 10px; color: #5c7053; }
.mock-channel strong { font-size: 14px; }
.inquiry-product { font-size: 25px; letter-spacing: -.03em; border-color: #a5b38f; }
.toast { background: #173e33; border-color: #536c4d; border-radius: 3px; padding: 14px 22px; font-size: 13px; }

@media (min-width: 1600px) {
  .hero { gap: 95px; min-height: 810px; }
  .hero-world { height: 670px; }
}
@media (max-width: 1190px) {
  .wrap { width: calc(100% - 72px); }
  .nav { gap: 22px; }
  .nav nav { gap: 23px; font-size: 12px; }
  .nav-contact { display: none; }
  .hero { gap: 52px; min-height: 670px; padding-top: 39px; padding-bottom: 62px; }
  h1 { font-size: clamp(64px, 7.2vw, 88px); }
  .hero-world { height: 550px; border-top-left-radius: 120px; }
  .hero-world:before { border-top-left-radius: 109px; }
  .feature-card { left: -22px; width: 270px; bottom: 36px; }
  .feature-card > img { width: 88px; }
  .feature-card h3 { font-size: 20px; }
  .hero-proof { margin-top: 38px; }
  .hero-mini, .hero-line { display: none; }
  .hero-intro { font-size: 14px; }
  .hero-actions { gap: 15px; }
  .hero-actions > .quiet-link { font-size: 12px; }
  .discovery-strip > .wrap { gap: 30px; }
  .strip-note { display: none; }
  .section { padding-block: 92px; }
  .section-heading { gap: 40px; }
  .section-heading > p { max-width: 280px; font-size: 13px; }
  .product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 34px 22px; }
  .ritual-layout { gap: 65px; }
  .ritual-stage { min-height: 560px; padding-inline: 25px; }
  .ritual-stage > img { max-height: 275px; max-width: 72%; }
  .stage-caption h3 { font-size: 28px; }
  .world-card { height: 420px; }
  .world-card > img { height: 235px; top: 56px; max-width: 71%; }
  .world-card h3 { font-size: 30px; }
  .about-layout { gap: 65px; }
  .about-copy > p { font-size: 13px; }
  .faq-section { gap: 65px; }
  .contact-grid { gap: 14px; }
  .contact-card { padding: 22px 16px 13px; }
  .contact-card h3 { font-size: 27px; }
  .contact-card strong { font-size: 11px; }
  .contact-card p { font-size: 10px; }
  .contact-card-link { font-size: 10px; }
  .detail-copy { padding: 60px 30px 30px; }
}
@media (min-width: 761px) and (max-width: 950px) {
  .wrap { width: calc(100% - 56px); }
  .nav nav { gap: 17px; font-size: 11px; }
  .nav-tools { gap: 11px; }
  .brand { font-size: 23px; }
  .hero { gap: 36px; min-height: 615px; }
  h1 { font-size: clamp(57px, 7.1vw, 70px); }
  .hero-world { height: 500px; border-top-left-radius: 90px; }
  .hero-world:before { border-top-left-radius: 79px; }
  .feature-card { width: 250px; left: -18px; bottom: 41px; }
  .feature-card > img { width: 79px; }
  .feature-card h3 { font-size: 18px; }
  .hero-intro { font-size: 13px; }
  .hero-proof { display: none; }
  .hero-actions { gap: 7px; }
  .hero-actions .button { padding: 14px 19px; font-size: 12px; }
  .hero-actions > .quiet-link { font-size: 11px; }
  .hero-image .photo-type { top: 30px; right: 24px; font-size: 7px; }
  .catalog-toolbar { gap: 20px; }
  .searchbox { width: 45%; }
  .searchbox input { font-size: 13px; }
  .catalog-tools { gap: 15px; }
  .saved-filter, .catalog-tools select { font-size: 11px; }
  .ritual-layout { gap: 40px; }
  .ritual-copy h2 { font-size: 45px; }
  .ritual-stage { min-height: 550px; padding-inline: 20px; }
  .ritual-stage > img { max-width: 77%; max-height: 260px; }
  .ritual-copy > p { font-size: 13px; }
  .ritual-steps p { font-size: 11px; }
  .world-grid { gap: 17px; }
  .world-card { height: 375px; }
  .world-card > img { top: 52px; height: 210px; }
  .world-card h3 { font-size: 27px; }
  .world-card > div { bottom: 25px; left: 20px; right: 20px; }
  .world-no { left: 20px; font-size: 8px; }
  .world-card > div > span { font-size: 10px; }
  .about-layout { gap: 45px; }
  .about-copy h2 { font-size: 39px; }
  .about-stamp { width: 75px; height: 75px; right: -17px; font-size: 7px; }
  .faq-section { gap: 45px; }
  .contact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .contact-card { padding: 25px 22px 14px; }
  .contact-card p { font-size: 12px; }
  .contact-card strong { font-size: 13px; }
  .contact-card-link { font-size: 11px; }
  .contact-heading { gap: 45px; }
  .detail-layout { grid-template-columns: .85fr 1.15fr; }
  .detail-copy h2 { font-size: 32px; }
  .detail-copy { padding: 60px 26px 28px; }
  .detail-visual { padding-inline: 28px; }
  .detail-tabs { gap: 15px; }
  .detail-tabs button { font-size: 11px; }
}
@media (max-width: 760px) {
  html { scroll-padding-top: 122px; }
  body { font-size: 14px; }
  .wrap { width: calc(100% - 40px); }
  .announcement { min-height: 29px; padding: 5px 16px; font-size: 9px; letter-spacing: .03em; }
  .announcement-side { display: none; }
  .header { backdrop-filter: blur(14px); }
  .nav { height: 108px; padding-top: 15px; align-items: flex-start; gap: 12px; }
  .brand { font-size: 22px; gap: 7px; }
  .brand-mark { font-size: 34px; }
  .brand small { font-size: 6px; margin-top: 8px; }
  .nav-tools { gap: 7px; padding-top: 0; }
  .nav-tools select { font-size: 12px; min-height: 44px; min-width: 46px; }
  .icon-btn { min-height: 44px; min-width: 48px; }
  .icon-btn > span { font-size: 9px; }
  .nav-contact { display: none; }
  .nav nav { position: absolute; left: 0; right: 0; bottom: 0; min-height: 44px; justify-content: space-between; gap: 9px; font-size: 11px; }
  .nav nav a { min-height: 44px; padding: 10px 0; display: flex; align-items: center; justify-content: center; text-align: center; line-height: 1.4; }
  .nav nav a:after { bottom: 6px; }
  .hero { grid-template-columns: 1fr; gap: 32px; min-height: auto; padding-top: 35px; padding-bottom: 42px; }
  .hero-copy { padding: 0; }
  .hero-copy > .eyebrow { font-size: 9px; letter-spacing: .14em; gap: 12px; }
  .short-line { width: 25px; }
  h1 { font-size: clamp(57px, 12.8vw, 79px); line-height: 1.035; margin: 23px 0 24px; letter-spacing: -.06em; }
  .hero-intro { max-width: 490px; font-size: 14px; line-height: 1.85; }
  .hero-actions { gap: 19px; margin-top: 27px; flex-wrap: wrap; }
  .button { min-height: 52px; padding: 14px 20px; font-size: 12px; gap: 21px; }
  .hero-actions > .quiet-link { font-size: 12px; }
  .hero-proof { display: none; }
  .hero-world { height: auto; aspect-ratio: 1 / 1.12; margin: 0; border-radius: 100px 3px 3px 3px; max-height: 620px; }
  .hero-world:before { inset: 11px; border-top-left-radius: 90px; }
  .hero-image > img { object-position: 70% 48%; }
  .hero-image .photo-type { top: 28px; bottom: auto; left: auto; right: 23px; font-size: 7px; letter-spacing: .19em; }
  .feature-card { bottom: 35px; left: -7px; width: min(278px, 79%); min-height: 144px; border-radius: 2px; }
  .feature-card > img { width: 88px; padding: 12px 6px; }
  .feature-card > div { padding: 15px 13px 10px; }
  .feature-card .eyebrow { font-size: 7px; }
  .feature-card h3 { font-size: 20px; line-height: 1.1; margin-top: 6px; }
  .feature-arrow { width: 44px; height: 38px; margin-top: 5px; }
  .feature-arrow svg { width: 17px; height: 17px; }
  .hero-switch { right: 17px; bottom: 8px; gap: 8px; }
  .hero-switch > span { font-size: 6px; letter-spacing: .08em; }
  .hero-switch > div { gap: 0; }
  .hero-switch button { width: 29px; height: 29px; }
  .hero-switch button:before { left: 12px; top: 12px; width: 4px; height: 4px; }
  .discovery-strip > .wrap { padding-block: 17px; gap: 19px; justify-content: space-between; align-items: flex-start; }
  .discovery-strip a { font-size: 9px; max-width: 115px; line-height: 1.55; gap: 7px; }
  .discovery-strip svg { width: 15px; height: 15px; }
  .section { padding-block: 63px; }
  .eyebrow { font-size: 9px; letter-spacing: .16em; }
  .section-heading { display: block; margin-bottom: 28px; }
  h2 { font-size: clamp(36px, 8.5vw, 52px); margin-top: 17px; letter-spacing: -.055em; line-height: 1.09; }
  .section-heading > p { max-width: 470px; font-size: 13px; line-height: 1.9; margin-top: 21px; }
  .catalog-toolbar { display: block; margin-bottom: 16px; }
  .searchbox { width: 100%; min-height: 55px; padding: 5px 0; }
  .searchbox input { font-size: 16px; }
  .searchbox > svg { width: 19px; height: 19px; }
  .catalog-tools { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; margin-top: 13px; }
  .saved-filter { font-size: 12px; min-height: 44px; }
  .catalog-tools select { min-height: 44px; font-size: 12px; padding: 8px 10px; }
  .filters { flex-wrap: nowrap; gap: 7px; overflow-x: auto; scrollbar-width: thin; scrollbar-color: #acb69c transparent; padding: 0 0 10px; margin: 0 -20px 12px; padding-left: 20px; padding-right: 20px; scroll-padding-inline: 20px; }
  .filter { flex-shrink: 0; min-height: 44px; padding: 9px 14px; font-size: 12px; }
  .catalog-meta { font-size: 10px; gap: 8px 13px; margin-bottom: 21px; }
  .catalog-meta > span:last-child { margin-left: 0; text-align: left; flex-basis: 100%; }
  .clear-filters { font-size: 11px; min-height: 34px; }
  .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 29px 14px; }
  .product-image { height: auto; aspect-ratio: 3 / 4.3; border-radius: 2px; }
  .product-image > a:not(.image-link) { padding: 54px 14px 54px; }
  .product-image img { max-width: 90%; max-height: 100%; }
  .product-index { font-size: 7px; letter-spacing: .06em; top: 17px; left: 11px; }
  .heart-btn { width: 44px; height: 44px; top: 4px; right: 2px; background: #fcfaf450; }
  .heart-btn svg { width: 16px; height: 16px; }
  .image-link { min-height: 44px; padding: 9px 11px; font-size: 9px; gap: 3px; }
  .image-link svg { width: 14px; height: 14px; }
  .card-meta { flex-wrap: wrap; margin-top: 13px; gap: 3px 8px; }
  .card-meta, .card-meta > span:last-child { font-size: 8px; line-height: 1.7; letter-spacing: .025em; }
  .card-meta > span:last-child { text-align: left; }
  .product-card h3 { font-size: 13px; line-height: 1.6; margin-top: 6px; font-weight: 400; }
  .load-wrap { margin-top: 35px; }
  .load-wrap .button { min-width: 250px; }
  .empty { padding: 45px 22px; }
  .empty h3 { font-size: 27px; }
  .ritual-section { padding: 55px 0; }
  .ritual-layout { grid-template-columns: 1fr; gap: 38px; }
  .ritual-copy h2 { font-size: clamp(41px, 9.7vw, 56px); }
  .ritual-copy > p { font-size: 14px; line-height: 1.85; margin-top: 23px; max-width: 490px; }
  .ritual-steps { margin-top: 29px; }
  .ritual-steps > button { padding: 19px 0; gap: 17px; }
  .ritual-steps > button > span { width: 32px; height: 32px; }
  .ritual-steps h3 { font-size: 23px; }
  .ritual-steps p { font-size: 12px; line-height: 1.75; }
  .ritual-foot { display: none; }
  .ritual-stage { min-height: 490px; border-radius: 2px; padding: 80px 28px 160px; }
  .ritual-stage > img { max-height: 260px; max-width: 68%; }
  .stage-label { top: 28px; font-size: 8px; }
  .stage-halo { inset: 83px 35px 148px; }
  .stage-caption { bottom: 25px; left: 25px; right: 25px; }
  .stage-caption > span { font-size: 10px; }
  .stage-caption h3 { font-size: 28px; max-width: 300px; margin: 10px auto 12px; }
  .stage-caption > button { min-height: 44px; font-size: 12px; }
  .world-grid { grid-template-columns: 1fr; gap: 17px; }
  .world-card { height: 300px; padding: 24px; }
  .world-no { top: 24px; left: 24px; font-size: 8px; }
  .world-card > img { height: 235px; max-width: 47%; top: 30px; left: auto; right: 18px; transform: rotate(5deg); }
  .world-card:hover > img { transform: rotate(0) translateY(-5px); }
  .world-card > div { bottom: 29px; left: 24px; right: auto; max-width: 49%; display: block; }
  .world-card h3 { font-size: 31px; max-width: 200px; line-height: 1.1; }
  .world-card > div > span { font-size: 11px; margin-top: 17px; }
  .about-section { padding: 48px 0 56px; }
  .about-layout { grid-template-columns: 1fr; gap: 36px; }
  .about-art { width: 100%; height: auto; aspect-ratio: 1350 / 1150; margin-right: 0; }
  .about-art > img { object-fit: contain; border-radius: 2px; }
  .about-stamp { width: 77px; height: 77px; top: 18px; right: -9px; font-size: 7px; }
  .about-copy h2 { font-size: clamp(37px, 8.8vw, 53px); }
  .about-copy > p { font-size: 14px; line-height: 1.9; margin-top: 23px; }
  .about-points { gap: 23px; margin-top: 26px; margin-bottom: 21px; padding-top: 23px; }
  .about-points h3 { font-size: 14px; }
  .about-points p { font-size: 13px; line-height: 1.9; }
  .about-copy .quiet-link { font-size: 13px; }
  .faq-section { grid-template-columns: 1fr; gap: 29px; }
  .faq-section h2 { font-size: clamp(39px, 9.3vw, 54px); }
  .faq-section details { padding: 20px 0; }
  .faq-section summary { font-size: 14px; line-height: 1.7; gap: 22px; }
  .faq-section details p { font-size: 13px; line-height: 1.9; padding: 15px 24px 3px 0; }
  .contact-section { padding: 54px 0; }
  .contact-heading { display: block; margin-bottom: 30px; }
  .contact-heading h2 { font-size: clamp(41px, 10vw, 58px); }
  .contact-heading > div:last-child { max-width: 490px; margin-top: 25px; }
  .contact-heading p { font-size: 14px; }
  .mock-note { font-size: 11px; margin-top: 16px; }
  .contact-grid { grid-template-columns: 1fr; gap: 14px; }
  .contact-card { padding: 23px 23px 13px; }
  .contact-card h3 { font-size: 30px; margin-top: 18px; }
  .contact-card p { font-size: 13px; min-height: 0; margin-top: 6px; }
  .contact-card strong { font-size: 14px; min-height: 0; margin-top: 17px; }
  .contact-card-top > span { font-size: 9px; }
  .contact-card-link { font-size: 12px; margin-top: 21px; min-height: 49px; }
  .footer { padding-top: 33px; padding-bottom: 23px; }
  .footer-top { flex-wrap: wrap; gap: 24px; padding-bottom: 27px; }
  .footer-top > p { max-width: 158px; margin-left: auto; font-size: 10px; line-height: 1.85; text-align: right; }
  .back-top { font-size: 11px; width: 100%; justify-content: space-between; }
  .footer-bottom { font-size: 10px; flex-wrap: wrap; gap: 11px 20px; padding-top: 16px; }
  .footer-bottom > span:nth-child(2) { order: 3; width: 100%; }
  .footer-bottom > button { font-size: 10px; margin-left: auto; }
  .product-dialog { max-width: calc(100vw - 20px); max-height: 95dvh; }
  .detail-layout { grid-template-columns: 1fr; }
  .product-dialog > .close-btn { top: 12px; margin: 12px 12px -56px auto; }
  .detail-visual { min-height: 380px; padding: 80px 35px 80px; }
  .detail-visual > img { max-height: 230px; max-width: 66%; }
  .detail-brand { left: 23px; top: 23px; font-size: 17px; }
  .detail-brand > small { font-size: 8px; }
  .detail-orbit { inset: 105px -25px 95px; }
  .detail-save { font-size: 12px; min-height: 44px; bottom: 20px; padding: 8px 15px; }
  .detail-copy { padding: 30px 24px; }
  .detail-copy h2 { font-size: 31px; margin-top: 16px; padding: 0; line-height: 1.17; }
  .detail-meta { gap: 28px; margin-top: 24px; }
  .detail-meta > span { font-size: 10px; }
  .detail-meta strong { font-size: 12px; }
  .detail-tabs { gap: 14px; margin-top: 25px; }
  .detail-tabs button { flex: 1; min-height: 52px; font-size: 12px; line-height: 1.5; }
  .detail-panel { padding-top: 23px; min-height: 0; }
  .detail-panel h3 { font-size: 12px; }
  .detail-panel p { font-size: 14px; line-height: 1.95; }
  .detail-notice { padding: 14px; gap: 10px; margin-top: 24px; }
  .detail-notice p { font-size: 11px; }
  .detail-source { font-size: 10px; }
  .detail-ask { font-size: 12px; }
  .share-link { font-size: 12px; }
  .related { padding: 29px 24px 35px; }
  .related > h3 { font-size: 29px; }
  .related-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 26px 14px; }
  .compact .product-image { height: 210px; }
  .compact .product-image > a:not(.image-link) { padding: 45px 13px 21px; }
  .compact .heart-btn { width: 44px; height: 44px; top: 2px; right: 1px; }
  .compact .heart-btn svg { width: 16px; height: 16px; }
  .compact.product-card h3 { font-size: 12px; }
  .compact .card-meta, .compact .card-meta > span:last-child { font-size: 8px; }
  .saved-dialog { width: 100vw; }
  .drawer-head { padding: 22px 23px; }
  .drawer-head h2 { font-size: 28px; }
  #saved-content { padding: 5px 23px 25px; }
  .saved-item { grid-template-columns: 70px 1fr 30px; gap: 15px; }
  .saved-item > img { width: 70px; height: 100px; }
  .saved-name { font-size: 14px; }
  .saved-item > div > span { font-size: 10px; }
  .empty-saved { padding: 60px 10px; }
  .empty-saved h3 { font-size: 31px; }
  .info-dialog { max-width: calc(100vw - 24px); padding: 58px 26px 28px; }
  .info-dialog h2 { font-size: 31px; }
  .info-dialog p { font-size: 14px; line-height: 1.9; }
  .mock-channel { padding: 18px; gap: 13px; }
  .mock-channel strong { font-size: 13px; }
  .inquiry-product { font-size: 24px; }
  .toast { width: max-content; max-width: calc(100vw - 40px); bottom: 20px; font-size: 12px; padding: 13px 19px; }
}
@media (max-width: 380px) {
  .wrap { width: calc(100% - 32px); }
  .nav nav { font-size: 10px; gap: 6px; }
  h1 { font-size: 55px; }
  .hero-actions { gap: 12px; }
  .hero-actions > .quiet-link { font-size: 11px; }
  .hero-actions .button { padding-inline: 16px; }
  .feature-card { width: 253px; }
  .feature-card > img { width: 82px; }
  .feature-card h3 { font-size: 18px; }
  .filters { margin-inline: -16px; padding-inline: 16px; }
  .product-grid { gap: 26px 12px; }
  .product-index { font-size: 6px; }
  .product-card h3 { font-size: 12px; }
  .image-link { font-size: 8px; padding-inline: 9px; }
  .world-card { height: 285px; }
  .world-card h3 { font-size: 29px; }
  .detail-copy { padding-inline: 21px; }
  .detail-tabs { gap: 11px; }
  .detail-tabs button { font-size: 11px; }
  .compact .product-image { height: 190px; }
}
@media (hover: none) {
  .product-image:hover img { transform: none; }
  .world-card:hover > img { transform: translateX(-50%) rotate(5deg); }
  .button:hover, .contact-card:hover { transform: none; }
}
@media (hover: none) and (max-width: 760px) {
  .world-card:hover > img { transform: rotate(5deg); }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *:before, *:after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
