/* Enyori identity: approved full artwork, optically framed for each placement. */
:root{--ink:#342b29;--muted:#7c716c;--accent:#ef5b4b;--cream:#fffaf5;--line:#eae1d9}
body{background:#fffdfa}header{background:#fffdfa}.brand{gap:9px;flex-shrink:0;letter-spacing:0}.enyori-mark{display:block;position:relative;overflow:hidden;width:44px;height:44px;flex:none}.enyori-mark img{position:absolute;max-width:none;width:104px;left:-30px;top:-18px;mix-blend-mode:multiply}.enyori-wordmark{width:145px;height:42px;flex:none}.enyori-wordmark img{width:218px;left:-35px;top:-125px;mix-blend-mode:multiply}.enyori-full{width:215px;height:207px;position:relative;overflow:hidden}.enyori-full img{width:280px;max-width:none;position:absolute;left:-32px;top:-45px;mix-blend-mode:multiply}footer{background:#faf2eb}footer>div:first-child>p{display:none}.navcta{background:#902039}.hero h1 .color{color:#a0253c}.label,.textlink,.detail-link{color:#98283d}.btn{background:#e95b4b}.btn:hover{background:#d94b3e}.notice b{color:#902039}.notice{border-color:#eadfd6}.ticker{background:#fbefe6}.ticker i{color:#a0253c}.related{background:#f8f1ea}.closing-section{background:#fff8f1}.closing-inner{border-color:#e7d6ca}.promise-number{color:#9c263b}.safety-kicker{color:#902039}.safety-banner{background:#f9eee8}.safe-chips span{background:#f7eee8}.mood-options button[aria-pressed="true"]{border-color:#b44350;background:#fff2eb;color:#902039}.status{color:#902039;background:#fff6ef;border-color:#efdad0}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #a0253c;outline-offset:5px}
@media(max-width:900px){.brand{gap:7px}.enyori-mark{width:37px;height:38px}.enyori-mark img{width:89px;left:-26px;top:-15px}.enyori-wordmark{width:122px;height:36px}.enyori-wordmark img{width:184px;left:-30px;top:-106px}}
@media(max-width:720px){.brand{gap:5px}.enyori-mark{width:31px;height:32px}.enyori-mark img{width:75px;left:-22px;top:-13px}.enyori-wordmark{width:103px;height:31px}.enyori-wordmark img{width:156px;left:-25px;top:-90px}.enyori-full{width:188px;height:180px}.enyori-full img{width:245px;left:-28px;top:-39px}header{gap:10px}.notice span{line-height:1.7}}

/* Readable secondary text across the site. */
:root{--muted:#514a46}
.hero-desc,.eventbody p,.pagecard p,.worldcard p,.ruleitem p,.guide-stage p,.subhero p,.belief p,.callout p{color:#514a46;font-weight:500}
.hero-note,.meta,.motion-toggle,.worldfoot,.event-info .facts dt,.prep-small,.assurance-note,.closing-action>span,.fine,.eventfoot,.little-label,footer p{color:#59504a;font-weight:500}
.assurance-note,.closing-action>span,.fine,.eventfoot,.little-label{font-size:12px;line-height:1.9}
.faqsearch::placeholder{color:#625952;opacity:1}
.ticker-track span{color:#526456}

/* Real photography: preserve faces and the complete dining scene. */
.hero-photo{object-position:50% center}
.story-photo img,.guide-intro img,.manifesto img{aspect-ratio:3/2;object-position:center;border-radius:28px}
.worldcard img{height:auto;aspect-ratio:3/2;object-position:center}
.eventcover{height:auto;aspect-ratio:3/2;object-position:center}
.photo-note{background:rgba(255,253,250,.94);color:#514a46;padding:6px 11px;border-radius:20px;font-size:11px;line-height:1.5}
@media(max-width:720px){.hero-photo{object-position:center}.story-photo img,.guide-intro img,.manifesto img{border-radius:20px}}

/* Give the expressions room: separate typography from photography. */
.hero-inner{display:grid;grid-template-columns:40% 60%;min-height:560px;overflow:visible;background:#fff7eb;border-radius:30px;isolation:isolate}
.hero-inner::after{display:none}
.hero-copy{grid-column:1;grid-row:1;width:auto;max-width:none;padding:42px 22px 42px 38px}
.hero-copy h1{font-size:clamp(42px,4.5vw,64px);line-height:1.3;letter-spacing:-.045em}
.hero-photo{position:relative;grid-column:2;grid-row:1;inset:auto;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center;border-radius:25px 25px 70px 25px;transform:rotate(1.5deg);box-shadow:0 20px 40px #5a35241a}
.hero-desc{font-size:14px;line-height:2}.hero .eyebrow{font-size:12px}
.toast-play{top:auto;bottom:10px;right:22px;width:86px;height:86px;background:#f8cf72}
.worldcard{overflow:hidden}.worldcard img{transition:transform .5s ease}.worldcard:hover img{transform:scale(1.025)}
.worldcard:nth-child(2){transform:translateY(22px)}.worldgrid{padding-bottom:22px}
.manifesto img[src$="friendly-talk.jpg"]{aspect-ratio:4/5;max-height:540px;object-position:50% 35%}
@media(max-width:1000px) and (min-width:721px){.hero-inner{grid-template-columns:44% 56%;min-height:490px}.hero-copy{padding-left:25px}.hero-copy h1{font-size:44px}.hero-desc{font-size:12px}.hero .eyebrow{font-size:10px}.toast-play{bottom:5px;width:72px;height:72px}}
@media(max-width:720px){.hero-inner{display:flex;min-height:0;overflow:hidden;border-radius:22px}.hero-photo{width:100%;height:auto;aspect-ratio:3/2;border-radius:0;transform:none;box-shadow:none;order:0}.hero-copy{order:1;padding:30px 25px 35px}.hero-copy h1{font-size:clamp(40px,10.8vw,56px)}.hero-desc{font-size:13px}.hero .eyebrow{font-size:11px}.toast-play{top:14px;bottom:auto;right:12px;width:66px;height:66px}.worldcard:nth-child(2){transform:none}.worldgrid{padding-bottom:0}}
@media(prefers-reduced-motion:reduce){.worldcard img{transition:none}.worldcard:hover img{transform:none}}

/* All new lifestyle compositions are landscape; preserve the complete group. */
.manifesto img[src$="jp-concept.png"]{aspect-ratio:3/2;object-position:center;max-height:none}

/* The approved logo uses intrinsic SVG viewboxes instead of pixel offsets. */
.brand{gap:10px}.brand .brand-symbol{display:block;width:43px;height:auto;flex:none}.brand .brand-name{display:block;width:142px;height:auto;flex:none}.footer-brand{display:block;width:205px;height:auto;max-width:100%}
.contact-wrap{max-width:1080px;margin:0 auto;padding:0 32px 100px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-card{border:1px solid #e6d8ce;border-radius:24px;padding:38px;background:#fffaf4}.contact-line{background:#f0f4ed;border-color:#dbe4d4}.contact-no{font-size:12px;letter-spacing:.16em;color:#685e56}.contact-card h2{font-size:25px;margin:28px 0 16px}.contact-card p{font-size:14px;line-height:1.9;color:#514a46}.contact-action{display:flex;justify-content:space-between;align-items:center;margin-top:32px;padding:18px 20px;background:#902039;border-radius:12px;color:white;font-size:14px;font-weight:700;text-decoration:none}.contact-line .contact-action{background:#34634b}.contact-action[aria-disabled="true"]{background:transparent;color:#62564b;border:1px solid #cbbfb2;cursor:default}.contact-card .contact-note{font-size:12px;margin:12px 0 0;overflow-wrap:anywhere}.contact-hint{padding:42px 0;border-bottom:1px solid #e6d8ce;margin-top:15px}.contact-hint h2{font-size:22px}.contact-hint p{max-width:720px;font-size:14px;line-height:2;color:#514a46}.contact-faq{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:30px 0;text-decoration:none;color:#342b29}.contact-faq small{display:block;font-size:11px;letter-spacing:.15em;color:#902039;margin-bottom:8px}.contact-faq strong{font-size:20px}
@media(max-width:900px){.brand .brand-symbol{width:36px}.brand .brand-name{width:122px}.brand{gap:7px}}
@media(max-width:720px){.brand .brand-symbol{width:31px}.brand .brand-name{width:108px}.footer-brand{width:180px}.contact-wrap{padding:0 20px 55px}.contact-grid{grid-template-columns:1fr;gap:18px}.contact-card{padding:27px}.contact-card h2{font-size:23px;margin-top:20px}.contact-hint h2{font-size:19px}.contact-faq strong{font-size:17px}}

.faq-categories{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}.faq-categories a{padding:10px 16px;border:1px solid #e6d8ce;border-radius:24px;font-size:13px;text-decoration:none;color:#514a46;background:#fffaf4}.faqsearch label{display:block;margin-bottom:12px;font-weight:700}.faqsearch input{width:100%;box-sizing:border-box;padding:16px 20px;border:1px solid #d7c9bd;border-radius:12px;font:inherit;background:#fff;color:#342b29}.faq-content p{line-height:2;color:#514a46}.category-title{scroll-margin-top:120px}
