:root{--ink:#39241b;--accent:#ef6b24;--paper:#fffaf4;--green:#09b846}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Yu Mincho","Hiragino Mincho ProN",serif;line-height:1.9}.hero{height:min(100vh,920px);min-height:680px;position:relative;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover;object-position:center 38%}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,250,244,.95) 0%,rgba(255,250,244,.62) 42%,transparent 72%)}.hero-copy{position:absolute;z-index:2;top:7%;left:max(6vw,30px)}.logo{font:34px Georgia,serif;letter-spacing:.03em}.hero h1{font-size:clamp(52px,7vw,86px);line-height:1.35;font-weight:500;margin:90px 0 20px}.hero p{font-size:24px}main{max-width:1180px;margin:auto}section{padding:90px 5vw}.en{text-align:center;color:var(--accent);font:24px Georgia,serif;letter-spacing:.05em}h2{text-align:center;font-size:clamp(38px,5vw,64px);font-weight:500;line-height:1.4;margin:10px 0 24px}.lead{text-align:center;font-size:20px}.menu-grid article{display:grid;grid-template-columns:55% 45%;align-items:center;margin:42px 0;background:#fff}.menu-grid img{width:100%;height:420px;object-fit:cover}.menu-grid article>div{padding:35px}.menu-grid b{font:36px Georgia;color:var(--accent)}h3{font-size:28px;font-weight:500;line-height:1.5}.tint{background:#fffdf9}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.features img{width:100%;aspect-ratio:1.1;object-fit:cover}.features p,.space p{font-size:17px}.space{display:grid;grid-template-columns:1.25fr 1fr;align-items:center}.space img{width:100%;height:360px;object-fit:cover}.space div{padding:45px}.scenes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}.scenes img{width:100%;aspect-ratio:1.25;object-fit:cover}.voices{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.voices blockquote{margin:0;background:#fff;border:1px solid #eadfd5;border-radius:20px;padding:35px;font-size:17px}.insta-title{text-align:center;margin-top:65px}.insta{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.insta img{width:100%;aspect-ratio:1.25;object-fit:cover;border-radius:10px}.access{display:grid;grid-template-columns:40% 60%;gap:45px;align-items:center}.access img{width:100%;height:520px;object-fit:cover;border-radius:20px}dl{font-size:18px}dt{font-weight:bold;margin-top:20px}dd{margin-left:0;border-bottom:1px solid #ddd0c4;padding-bottom:18px}.line{position:sticky;bottom:18px;z-index:5;display:flex;align-items:center;gap:22px;max-width:950px;margin:0 auto 25px;padding:18px 34px;border-radius:34px;background:var(--green);color:#fff;text-decoration:none;font:700 28px sans-serif;box-shadow:0 12px 30px #0002}.line span{font-size:15px;flex:1}.line b{display:block;font-size:28px}footer{text-align:center;padding:40px}@media(max-width:700px){.hero{height:90vh}.hero-copy{top:4%;left:7%}.logo{font-size:23px}.hero h1{font-size:49px;margin-top:70px}.hero p{font-size:17px}.hero:after{background:linear-gradient(180deg,rgba(255,250,244,.95),rgba(255,250,244,.55) 35%,transparent 65%)}section{padding:65px 20px}h2{font-size:38px}.menu-grid article{grid-template-columns:1fr}.menu-grid img{height:330px}.menu-grid article>div{padding:25px}.features,.voices{grid-template-columns:1fr}.space{grid-template-columns:1fr}.space div{padding:28px 10px}.space img{height:280px}.scenes{grid-template-columns:1fr 1fr}.access{grid-template-columns:1fr}.access img{height:380px}.insta{grid-template-columns:repeat(2,1fr)}.line{margin:0 14px 14px;padding:14px 20px;border-radius:26px;font-size:22px}.line span{font-size:11px}.line b{font-size:20px}}

/* CONTACT / LINE DEMO ADDITIONS */
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px;position:relative;z-index:2;font-family:sans-serif}
.hero-actions a{border-radius:999px;padding:12px 22px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.hero-contact{background:var(--accent);color:#fff;box-shadow:0 8px 22px #39241b22}
.hero-line{border:1px solid #6e5345;color:var(--ink);background:#fffaf4d9}
.contact-section{scroll-margin-top:24px}
.contact-lead{text-align:center;margin:0 auto 34px;font-size:18px}
.contact-grid{display:grid;grid-template-columns:1.35fr .85fr;gap:28px;align-items:start}
.contact-panel{background:#fff;border:1px solid #eadfd5;border-radius:20px;padding:32px;box-shadow:0 8px 30px #39241b0a}
.contact-panel h3{margin:0 0 14px;font-size:25px}.contact-panel .en{text-align:left;font-size:19px}
.demo-note{font-family:sans-serif;color:#75665b;font-size:12px;line-height:1.8}
.form-field{display:flex;flex-direction:column;gap:7px;margin:17px 0;font-family:sans-serif}
.form-field label{font-weight:700;font-size:14px}.form-field label small{font-size:11px;color:#b24e2a;margin-left:6px}
.form-field input,.form-field textarea,.form-field select{width:100%;border:1px solid #cdbeb2;border-radius:9px;background:#fffdfa;color:var(--ink);padding:13px 14px;font:15px sans-serif;line-height:1.5}
.form-field :is(input,textarea,select):focus-visible{outline:3px solid #f3ab7b;outline-offset:1px}
.contact-submit{display:block;background:var(--accent);color:#fff;border:0;border-radius:11px;padding:16px 22px;width:100%;font:700 16px sans-serif;cursor:pointer}
.contact-submit:hover{filter:brightness(.94)}.demo-response{font-family:sans-serif;font-size:13px;color:#805139;margin:12px 0 0}
.line-panel{background:#f8fff9}.line-demo{font:700 18px sans-serif;border-radius:12px;background:var(--green);color:#fff;padding:18px 16px;text-align:center;cursor:default}
.line-demo span{float:right}.back-top{display:inline-block;margin-top:23px;font:700 14px sans-serif;color:#735039;text-decoration:underline;text-underline-offset:4px}
.footer-demo{font-size:12px;color:#8c7869}
@media(max-width:700px){.hero-actions{margin-top:15px;gap:8px;max-width:310px}.hero-actions a{font-size:11px;padding:10px 13px}.contact-grid{grid-template-columns:1fr}.contact-section{padding-bottom:90px}.contact-panel{padding:22px}.contact-lead{font-size:15px}.contact-panel h3{font-size:23px}}


/* CAFÉ LUMINA — complete footer */
.cafe-footer{background:#30221c;color:#f4e9df;padding:0;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;border-top:5px solid #d8ab80}
.cafe-footer *{box-sizing:border-box}
.cafe-footer .footer-inner{max-width:1180px;margin:0 auto;padding:66px 40px 22px}
.cafe-footer .footer-top{display:grid;grid-template-columns:1.35fr .8fr 1.15fr;gap:52px;padding-bottom:53px}
.cafe-footer .footer-logo{display:inline-block;color:#fff6ea;font:normal clamp(27px,3vw,37px) Georgia,serif;letter-spacing:.08em;text-decoration:none}
.cafe-footer .footer-tagline{font-size:15px;color:#e4cfbc;line-height:2.1;margin:20px 0 22px}
.cafe-footer .footer-sample{font:11px sans-serif;letter-spacing:.08em;color:#dab998;border:1px solid #8a6750;border-radius:40px;padding:8px 12px;display:inline-block}
.cafe-footer h3{font:normal 20px Georgia,serif;letter-spacing:.06em;color:#dfb187;margin:4px 0 23px}
.cafe-footer .footer-nav{display:flex;flex-direction:column;gap:11px}
.cafe-footer .footer-nav a{color:#f1e4d5;text-decoration:none;font:14px sans-serif;padding:2px 0}
.cafe-footer .footer-guide-block p{font-size:13px;color:#ead9cb;line-height:1.9;margin-bottom:16px}
.cafe-footer .footer-guide-block small{font-size:11px;color:#bba28b}
.cafe-footer .footer-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}
.cafe-footer .footer-actions a{font:700 13px sans-serif;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border-radius:4px}
.cafe-footer .footer-link-cta{background:#c88c5d;color:#251911}
.cafe-footer .footer-link-line{border:1px solid #c6aa8f;color:#fff6ed}
.cafe-footer .footer-nav a:hover,.cafe-footer .footer-bottom a:hover{color:#edb078}
.cafe-footer .footer-bottom{border-top:1px solid #675044;padding-top:20px;display:flex;flex-wrap:wrap;align-items:center;gap:10px 24px;justify-content:space-between;font:11px/1.6 sans-serif;color:#d1bca9}
.cafe-footer .footer-bottom a{color:#e2bc95;text-decoration:none;font-size:11px;white-space:nowrap}
@media(max-width:760px){.cafe-footer .footer-inner{padding:40px 22px 22px}.cafe-footer .footer-top{grid-template-columns:1fr 1fr;gap:34px 22px;padding-bottom:35px}.cafe-footer .footer-brand-block{grid-column:1/-1}.cafe-footer .footer-logo{font-size:31px}.cafe-footer .footer-bottom{align-items:flex-start;flex-direction:column;gap:10px}.cafe-footer .footer-bottom a{margin-top:6px}}
@media(max-width:480px){.cafe-footer .footer-top{grid-template-columns:1fr}.cafe-footer .footer-brand-block{grid-column:auto}.cafe-footer .footer-inner{padding:37px 21px 22px}.cafe-footer h3{margin-bottom:13px}.cafe-footer .footer-guide-block{border-top:1px solid #665043;padding-top:22px}}
