/* Lightweight, self-contained responsive theme, no external dependencies */
:root{--brand:#7B2F31;--gold:#D5A45B;--ink:#272521;--paper:#FAF6ED;--soft:#fff;--muted:#6d6b65;--line:rgba(33,39,35,.12);--radius:24px;--shadow:0 24px 80px rgba(32,33,27,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65;font-size:16px;-webkit-font-smoothing:antialiased}body.lang-ja{font-family:"Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo",system-ui,sans-serif}body.lang-vi{font-family:system-ui,-apple-system,"Segoe UI",sans-serif}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{line-height:1.14;letter-spacing:-.035em}h1,h2{font-family:Georgia,"Times New Roman",serif}body.lang-ja h1,body.lang-ja h2{font-family:"Yu Mincho","Hiragino Mincho ProN",Georgia,serif;letter-spacing:.025em}h1{font-size:clamp(2.8rem,5.4vw,5.75rem);font-weight:600}h2{font-size:clamp(2rem,3.3vw,3.7rem);font-weight:600}h3{font-size:1.28rem}p{color:#575853}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}::selection{background:var(--gold);color:#1e1e1e}.container{width:min(1180px,calc(100% - 44px));margin-inline:auto}.skip-link{position:absolute;left:16px;top:-60px;background:#fff;z-index:10000;padding:10px 16px}.skip-link:focus{top:10px}.announcement{background:var(--brand);color:#fff;text-align:center;font-size:.75rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;padding:10px 20px}.site-header{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--paper) 92%,white);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;gap:28px;min-height:82px}.brand{display:flex;align-items:center;gap:12px;font-weight:900;letter-spacing:-.05em;font-size:1.25rem;white-space:nowrap;line-height:1.2}.brand-mark{width:41px;height:41px;border-radius:14px;display:grid;place-items:center;background:var(--brand);color:#fff;font-family:Georgia,serif;font-size:1.3rem;font-weight:700}.nav-links{display:flex;align-items:center;gap:25px;margin-left:auto;font-size:.89rem;font-weight:700}.nav-links a{padding:7px 0;transition:color .2s}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--brand)}.nav-cta{display:inline-flex!important;padding:12px 20px!important;border-radius:100px;color:#fff!important;background:var(--brand);align-items:center;gap:10px}.menu-toggle{display:none;margin-left:auto;border:1px solid var(--line);padding:10px;border-radius:12px;background:#fff}.menu-toggle svg{width:22px;height:22px}.hero{padding:74px 0 92px;overflow:hidden;position:relative}.hero-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:35px;align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.15em;font-weight:900;color:var(--brand);font-size:.75rem;margin-bottom:28px}.eyebrow:before{content:'';width:28px;height:2px;background:var(--gold)}.hero h1{margin-bottom:27px;max-width:700px}.hero .lead{max-width:600px;color:#63655e;font-size:1.12rem;line-height:1.85}.actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:36px}.btn{display:inline-flex;gap:11px;align-items:center;justify-content:center;padding:15px 24px;border-radius:100px;background:var(--brand);color:#fff;font-weight:800;box-shadow:0 14px 24px rgba(36,36,36,.08);font-size:.9rem;transition:transform .2s,box-shadow .2s}.btn:hover{transform:translateY(-2px);box-shadow:0 18px 32px rgba(36,36,36,.13)}.btn.ghost{color:var(--ink);background:#fff;border:1px solid var(--line);box-shadow:none}.btn svg{width:16px;height:16px}.visual-shell{position:relative;border-radius:40% 39% 33% 38%/34% 40% 35% 39%;background:linear-gradient(145deg,color-mix(in srgb,var(--gold) 23%,white),color-mix(in srgb,var(--brand) 12%,white));padding:17px;box-shadow:0 50px 80px rgba(43,35,25,.1)}.visual-shell:after{content:'';position:absolute;right:-15px;top:17px;width:85px;height:85px;border:1px solid var(--gold);border-radius:50%;z-index:-1}.hero-visual{border-radius:40% 39% 33% 38%/34% 40% 35% 39%;width:100%;aspect-ratio:1.22;object-fit:cover}.hero-sticker{position:absolute;right:-12px;bottom:23px;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:17px;padding:15px 18px;box-shadow:var(--shadow);max-width:260px;font-size:.8rem;line-height:1.5;font-weight:700}.hero-sticker span:first-child{font-size:1.5rem}.metrics{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper) 80%,white);padding:21px 0}.metrics-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.metric{display:flex;align-items:center;gap:15px}.metric strong{font-family:Georgia,serif;font-size:2rem;letter-spacing:-.05em;color:var(--brand)}.metric span{max-width:130px;font-size:.78rem;line-height:1.5;color:var(--muted);font-weight:650}.section{padding:99px 0}.section.tight{padding:70px 0}.section-intro{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:34px}.section-intro h2{margin:0;max-width:700px}.section-intro p{max-width:365px;margin:0}.section-note{text-transform:uppercase;letter-spacing:.18em;font-size:.73rem;font-weight:900;color:var(--brand);margin:0 0 12px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.cards.three{grid-template-columns:repeat(3,minmax(0,1fr))}.tile{position:relative;display:flex;flex-direction:column;background:#fff;border-radius:var(--radius);border:1px solid var(--line);overflow:hidden;transition:transform .24s,box-shadow .24s;min-width:0}.tile:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.tile-image{width:100%;aspect-ratio:1.3;object-fit:cover;background:#f0e9dd}.tile-body{padding:22px 23px 27px;flex:1}.tile-icon{font-size:1.42rem;margin-bottom:14px}.tile h3{margin-bottom:10px;line-height:1.3;letter-spacing:-.02em}.tile p{font-size:.88rem;line-height:1.65;color:var(--muted)}.tile-link{color:var(--brand);font-weight:900;font-size:.8rem;margin-top:17px;display:inline-flex;gap:9px;align-items:center}.feature{display:grid;grid-template-columns:.91fr 1.09fr;gap:75px;align-items:center}.feature-picture{position:relative;border-radius:31px;background:color-mix(in srgb,var(--brand) 15%,white);padding:18px}.feature-picture img{width:100%;border-radius:21px;aspect-ratio:1.12;object-fit:cover}.feature-copy h2{max-width:670px}.feature-copy p{font-size:1.06rem;line-height:1.9;max-width:650px}.feature-list{margin:27px 0 0;padding:0;list-style:none}.feature-list li{padding:10px 0;display:flex;gap:12px;font-size:.91rem;font-weight:700}.feature-list li:before{content:'✦';color:var(--brand)}.soft-section{background:color-mix(in srgb,var(--brand) 7%,var(--paper));border-block:1px solid var(--line)}.article-card .tile-body{padding:24px}.kicker{font-size:.7rem;font-weight:900;color:var(--brand);letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.process-card{border-top:2px solid var(--brand);padding:25px 20px 0}.process-card b{font-family:Georgia,serif;color:var(--brand);font-size:3.1rem;line-height:1}.process-card h3{margin:19px 0 9px}.process-card p{font-size:.89rem}.faq-list{display:grid;gap:11px;max-width:920px}.faq-list details{background:#fff;border:1px solid var(--line);padding:20px 24px;border-radius:15px}.faq-list summary{font-weight:800;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';color:var(--brand);font-size:1.5rem;font-weight:300}.faq-list details[open] summary:after{content:'−'}.faq-list details p{margin:15px 0 0;font-size:.92rem}.banner{margin:30px 0 0;padding:39px 46px;background:var(--brand);border-radius:27px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:20px}.banner h2{color:#fff;font-size:clamp(1.65rem,2.5vw,2.65rem);margin:0}.banner .btn{background:#fff;color:var(--brand)}.site-footer{padding:72px 0 30px;background:#222d2a;color:#fff}.footer-grid{display:grid;grid-template-columns:1.55fr 1fr 1fr 1fr;gap:45px}.site-footer .brand{margin-bottom:20px}.site-footer .brand-mark{background:var(--gold);color:#1e2a26}.site-footer p{color:#c2cbc4;font-size:.85rem;max-width:350px}.site-footer h4{font-size:.81rem;letter-spacing:.09em;text-transform:uppercase;margin-bottom:18px}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin:9px 0;font-size:.85rem;color:#d5ddd7}.site-footer a:hover{color:var(--gold)}.footer-bottom{padding-top:30px;border-top:1px solid #51615a;margin-top:55px;display:flex;justify-content:space-between;gap:15px;color:#b5c0b8;font-size:.77rem}.inner-hero{padding:58px 0 65px;background:linear-gradient(120deg,color-mix(in srgb,var(--gold) 12%,var(--paper)),var(--paper));border-bottom:1px solid var(--line)}.inner-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:52px;align-items:center}.inner-hero h1{font-size:clamp(2.7rem,4.4vw,4.8rem);max-width:760px;margin-bottom:21px}.inner-hero p{max-width:640px;font-size:1.08rem}.inner-art{width:100%;aspect-ratio:1.65;object-fit:cover;border-radius:24px;box-shadow:var(--shadow)}.breadcrumbs{display:flex;align-items:center;gap:11px;flex-wrap:wrap;color:#71766e;font-size:.78rem;margin-bottom:27px}.breadcrumbs a:hover{color:var(--brand)}.breadcrumbs span{opacity:.5}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;align-items:start;gap:55px}.prose{max-width:780px;font-size:1.02rem}.prose p{line-height:1.94}.prose h2{font-size:clamp(1.55rem,2.8vw,2.45rem);margin:44px 0 17px}.prose h3{font-size:1.22rem;margin-top:30px}.prose ul,.prose ol{padding-left:22px;color:#585d56}.prose li{padding:5px 0}.prose blockquote{border-left:3px solid var(--brand);margin:35px 0;padding:15px 22px;background:#fff;border-radius:0 14px 14px 0;color:var(--ink);font-family:Georgia,serif;font-size:1.28rem}.sidebox{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;position:sticky;top:115px}.sidebox h3{font-size:1rem;margin-bottom:13px}.sidebox a{display:block;border-bottom:1px solid var(--line);padding:11px 0;font-size:.86rem;font-weight:700}.sidebox a:last-child{border:0}.sidebox a:hover{color:var(--brand)}.checklist{list-style:none!important;padding:0!important;margin:25px 0 30px}.checklist li{display:flex;gap:12px;padding:13px 15px;background:#fff;border:1px solid var(--line);margin:8px 0;border-radius:12px;color:var(--ink)}.checklist li:before{content:'✓';display:grid;place-items:center;background:color-mix(in srgb,var(--brand) 10%,white);color:var(--brand);border-radius:100%;width:25px;height:25px;min-width:25px;font-weight:900;font-size:.8rem}.callout{background:color-mix(in srgb,var(--brand) 8%,white);padding:26px 29px;border-left:3px solid var(--brand);border-radius:0 15px 15px 0;margin:28px 0}.callout p{margin:0}.pill{display:inline-block;font-size:.73rem;text-transform:uppercase;letter-spacing:.13em;font-weight:900;color:var(--brand);padding:7px 12px;background:color-mix(in srgb,var(--brand) 10%,white);border-radius:50px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.text-card{background:#fff;border:1px solid var(--line);padding:27px;border-radius:20px}.text-card h3{margin:15px 0 10px}.text-card p{font-size:.9rem}.searchbar{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);padding:10px 17px;border-radius:15px;margin:20px 0 30px}.searchbar input{width:100%;background:transparent;border:0;padding:10px;font-size:1rem;outline:0;color:var(--ink)}.searchbar svg{width:21px;height:21px;color:var(--brand)}.search-results{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.result-item{display:block;background:#fff;padding:20px 23px;border:1px solid var(--line);border-radius:14px}.result-item:hover{border-color:var(--brand)}.result-item strong{display:block}.result-item small{display:block;color:var(--brand);text-transform:uppercase;font-size:.68rem;font-weight:850;letter-spacing:.12em;margin:7px 0}.result-item p{font-size:.86rem;margin:0}.no-results{display:none;margin:30px 0;padding:25px;background:#fff;border-radius:14px;text-align:center}.notes{color:#656f68;font-size:.8rem;padding:15px 0}.site-hotel .hero{background:linear-gradient(140deg,#edf1e8,var(--paper))}.site-italy h1,.site-italy h2{letter-spacing:-.05em}.site-bakery .hero h1{transform:rotate(-1deg)}.site-japanese .hero h1{font-size:clamp(2.55rem,4.4vw,4.9rem);line-height:1.38}.site-japanese h2{line-height:1.42}.site-vietnamese h1{line-height:1.25}.site-kitchen .tile-image{filter:saturate(.85)}.site-japanese .visual-shell{border-radius:33px}.site-japanese .hero-visual{border-radius:23px}.site-hotel .visual-shell{border-radius:25px}.site-hotel .hero-visual{border-radius:13px}.site-kitchen .visual-shell{border-radius:30px}.site-kitchen .hero-visual{border-radius:18px}
@media(max-width:1050px){.cards{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}.footer-grid>div:last-child{grid-column:span 3}.feature{gap:30px}.hero-grid{gap:18px}}
@media(max-width:760px){.container{width:min(100% - 30px,1180px)}.nav{min-height:71px}.menu-toggle{display:inline-flex}.nav-links{display:none;position:absolute;left:0;right:0;top:100%;padding:18px 22px 25px;background:var(--paper);flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid var(--line);box-shadow:0 15px 26px rgba(0,0,0,.07)}.nav-links[data-open=true]{display:flex}.nav-links a{padding:13px 0}.nav-links .nav-cta{margin-top:12px;justify-content:center}.hero{padding:48px 0 60px}.hero-grid,.feature,.inner-hero-grid{grid-template-columns:1fr;gap:40px}.hero h1{font-size:clamp(2.8rem,10vw,4.2rem)}.hero .lead{font-size:1rem}.hero-visual{aspect-ratio:1.4}.visual-shell{max-width:540px;margin:auto}.hero-sticker{right:0}.section{padding:67px 0}.section.tight{padding:54px 0}.section-intro{display:block}.section-intro p{margin-top:16px}.cards.three{grid-template-columns:repeat(2,minmax(0,1fr))}.process-grid{grid-template-columns:1fr}.process-card{padding:20px 10px 8px}.content-grid{grid-template-columns:1fr;gap:35px}.sidebox{position:static}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:span 2}.banner{padding:30px;display:block}.banner .btn{margin-top:18px}.inner-hero{padding:38px 0}.inner-hero h1{font-size:clamp(2.5rem,8vw,4.1rem)}.metrics-inner{gap:12px}.metric{width:calc(50% - 12px)}.metric strong{font-size:1.6rem}}
@media(max-width:490px){.cards,.cards.three,.grid-2,.search-results{grid-template-columns:1fr}.hero h1{font-size:2.75rem}.section h2{font-size:2.15rem}.nav-cta{font-size:.84rem}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:auto}.footer-bottom{display:block}.hero-sticker{font-size:.73rem}.metrics-inner{gap:18px}.metric{width:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
