
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Noto+Sans+JP:wght@300;400;500&family=Noto+Serif+JP:wght@300;400;500&display=swap');
:root{--ink:#403a33;--muted:#82796e;--sand:#eee8df;--cream:#f8f5f0;--paper:#fcfaf7;--line:#ddd4c8;--accent:#a58b70;--serif:'Cormorant Garamond','Noto Serif JP',serif;--jp:'Noto Sans JP',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--jp);font-weight:300;line-height:1.9}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(1160px,calc(100% - 48px));margin:auto}.eyebrow{font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--accent)}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.2;margin:0 0 20px}h1{font-size:clamp(48px,7vw,88px)}h2{font-size:clamp(34px,4vw,52px)}h3{font-size:28px}p{color:var(--muted)}.btn{display:inline-flex;align-items:center;gap:22px;padding:14px 22px;border:1px solid var(--ink);font-size:11px;letter-spacing:.12em;transition:.3s}.btn:hover{background:var(--ink);color:white;transform:translateY(-3px)}.btn.light{border-color:#fff;color:#fff}.btn.light:hover{background:#fff;color:var(--ink)}
header{position:fixed;z-index:20;top:0;left:0;width:100%;background:rgba(252,250,247,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(221,212,200,.6);transition:.3s}header.scrolled{box-shadow:0 8px 30px #403a3310}.nav{height:82px;display:flex;align-items:center;justify-content:space-between}.logo{font-family:var(--serif);font-size:30px;letter-spacing:.16em}.logo small{display:block;font-family:var(--jp);font-size:8px;letter-spacing:.28em;color:var(--muted);margin-top:-8px}.navlinks{display:flex;gap:27px;align-items:center;font-size:10px;letter-spacing:.12em}.navlinks a{position:relative}.navlinks a:after{content:'';position:absolute;left:0;bottom:-7px;width:0;height:1px;background:var(--accent);transition:.3s}.navlinks a:hover:after{width:100%}.menu{display:none;background:none;border:0;font-size:24px;color:var(--ink)}
.hero{min-height:740px;padding:150px 0 90px;display:grid;align-items:center;position:relative;overflow:hidden;background:linear-gradient(110deg,#f5f0e9 0%,#f5f0e9 48%,#e7ddd0 48%,#e7ddd0 100%)}.hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px}.hero-copy{position:relative;z-index:2}.hero-copy h1{max-width:650px}.hero-copy p{max-width:430px;margin:24px 0 34px}.hero-art{height:490px;position:relative}.hero-art .orb{position:absolute;width:390px;height:390px;border-radius:50%;background:linear-gradient(145deg,#d9c9b7,#b9a48e);right:4%;top:6%;box-shadow:inset -25px -20px 50px #79634b25}.sofa-shape{position:absolute;width:92%;height:190px;right:0;bottom:58px;background:linear-gradient(160deg,#e9dfd3,#b8a48f);border-radius:45px 45px 24px 24px;box-shadow:0 35px 45px #594a3825}.sofa-shape:before{content:'';position:absolute;left:7%;right:7%;top:-72px;height:120px;border-radius:38px 38px 18px 18px;background:linear-gradient(135deg,#f3ece3,#cbb9a5);box-shadow:inset 0 -8px 20px #8e786326}.sofa-shape:after{content:'';position:absolute;left:8%;right:8%;bottom:-23px;height:28px;border-left:8px solid #796957;border-right:8px solid #796957}.hero-tag{position:absolute;right:0;top:0;font-family:var(--serif);font-size:14px;letter-spacing:.18em;color:#8a7968;writing-mode:vertical-rl}.section{padding:115px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:50px}.section-head p{max-width:400px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#f2ede6;min-height:350px;position:relative;overflow:hidden;padding:28px;display:flex;flex-direction:column;justify-content:end;transition:.45s}.card:hover{transform:translateY(-8px);box-shadow:0 25px 45px #44382914}.card-art{position:absolute;inset:0 0 0 0;opacity:.9;transition:.6s}.card:hover .card-art{transform:scale(1.04)}.card-content{position:relative;z-index:1;background:linear-gradient(transparent,#f2ede6 30%);padding-top:90px}.card h3{margin:5px 0}.card p{font-size:12px;margin:0 0 14px}.card .arrow{font-size:11px;letter-spacing:.15em}.art-sofa{background:radial-gradient(ellipse at 55% 45%,#d8c9b8 0 25%,transparent 26%),linear-gradient(135deg,#e5dbcf,#c9b9a7)}.art-bed{background:radial-gradient(ellipse at 50% 55%,#f5f0e9 0 34%,transparent 35%),linear-gradient(130deg,#d9d0c5,#b9aa99)}.art-custom{background:radial-gradient(circle at 50% 40%,#d0bda8 0 20%,transparent 21%),linear-gradient(135deg,#e9e0d5,#c8b7a5)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.visual-panel{min-height:480px;background:linear-gradient(145deg,#e8dfd4,#cbb9a6);position:relative;overflow:hidden}.visual-panel:before{content:'';position:absolute;width:65%;height:45%;left:17%;top:27%;border-radius:35px;background:#eee6dc;box-shadow:0 30px 45px #55443120}.visual-panel:after{content:'';position:absolute;width:50%;height:30%;left:25%;top:19%;border-radius:30px;background:#f6f1ea;box-shadow:inset 0 -7px 18px #98846b20}.number{font-family:var(--serif);font-size:90px;color:#c7b8a6;line-height:1}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:40px}.step{border-top:1px solid var(--line);padding-top:20px}.step b{font-family:var(--serif);font-size:30px;font-weight:400;color:var(--accent)}.step h3{font-size:22px;margin:8px 0}.cta{padding:85px 0;background:#62594f;color:#f8f4ee;text-align:center}.cta p{color:#e2d9cf}.cta h2{margin-bottom:18px}.page-hero{padding:175px 0 80px;background:linear-gradient(110deg,#f1ebe3,#e4d9cc)}.page-hero p{max-width:620px}.content{padding:80px 0}.feature-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.feature{padding:28px;border:1px solid var(--line);background:#fffdf9}.feature h3{font-size:23px}.feature p{font-size:13px}.formbox{background:#f2ede6;padding:38px;max-width:760px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:17px}.field label{font-size:11px;letter-spacing:.08em}.field input,.field select,.field textarea{border:1px solid #d7cfc5;background:#fffdf9;padding:13px;font:inherit;color:var(--ink);outline:none}.field textarea{min-height:110px;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent)}.note{font-size:11px;color:#938779}.preview{max-width:180px;margin-top:10px;border-radius:4px}.payment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.payment{padding:28px;border:1px solid var(--line);background:#fffdf9}.payment .symbol{font-family:var(--serif);font-size:34px;color:var(--accent)}footer{padding:55px 0 28px;background:#eae3da}.foot{display:flex;justify-content:space-between;gap:30px;align-items:start}.footlinks{display:flex;gap:20px;flex-wrap:wrap;font-size:11px}.copyright{border-top:1px solid #d4c9bc;margin-top:35px;padding-top:18px;font-size:10px;color:#8c8175}.reveal{opacity:0;transform:translateY(25px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:#403a33;color:white;padding:12px 20px;font-size:12px;opacity:0;pointer-events:none;transition:.3s;z-index:50}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:850px){.navlinks{display:none;position:absolute;top:82px;left:0;width:100%;padding:25px;background:var(--paper);flex-direction:column;gap:20px;border-bottom:1px solid var(--line)}.navlinks.open{display:flex}.menu{display:block}.hero{min-height:auto}.hero-grid,.split{grid-template-columns:1fr}.hero-art{height:350px}.hero-art .orb{width:280px;height:280px}.sofa-shape{height:130px;bottom:35px}.cards,.payment-grid{grid-template-columns:1fr 1fr}.section{padding:80px 0}.section-head{display:block}.steps{grid-template-columns:1fr}.foot{display:block}.footlinks{margin-top:25px}}
@media(max-width:560px){.wrap{width:min(100% - 32px,1160px)}.nav{height:70px}.logo{font-size:25px}.navlinks{top:70px}.hero{padding:120px 0 55px}.hero-grid{gap:10px}.hero-art{height:280px}.hero-art .orb{width:220px;height:220px}.sofa-shape{width:95%;height:105px}.cards,.payment-grid,.feature-list,.formgrid{grid-template-columns:1fr}.card{min-height:290px}.page-hero{padding:130px 0 55px}.content{padding:55px 0}.formbox{padding:22px}.section{padding:65px 0}}

/* GOFIELD photo update */
.hero-photo{background-image:linear-gradient(90deg,rgba(40,31,22,.14),transparent 55%),url('assets/styles/straight.jpg');background-size:cover;background-position:center;border-radius:3px;box-shadow:0 25px 55px #4b38251c}
.hero-photo .hero-tag{color:#fff;text-shadow:0 1px 8px #40302088;right:18px;top:18px}
.hero-photo .orb,.hero-photo .sofa-shape{display:none}
.card-art{background-size:cover!important;background-position:center!important}
.art-sofa{background-image:linear-gradient(0deg,rgba(42,32,23,.04),transparent),url('assets/styles/straight.jpg')!important}
.art-bed{background-image:linear-gradient(0deg,rgba(42,32,23,.04),transparent),url('assets/mattress-bedroom.jpg')!important}
.art-custom{background-image:linear-gradient(0deg,rgba(42,32,23,.10),transparent),url('assets/fabrics/boucle.jpg')!important}
.visual-panel{background-size:cover;background-position:center}
@media(max-width:850px){.hero-photo{height:350px}}
@media(max-width:560px){.hero-photo{height:280px}}


/* v2 additions */
.payment-grid--2{grid-template-columns:repeat(2,1fr);max-width:780px}
.notice-box{border:1px solid var(--line);background:#fffdf9;padding:18px 20px;margin-bottom:22px}
.notice-box p{margin:0;font-size:12px;color:var(--ink);line-height:1.8}
.legal-table{width:100%;border-collapse:collapse;background:#fffdf9}
.legal-table th,.legal-table td{border:1px solid var(--line);padding:16px 18px;text-align:left;vertical-align:top;font-weight:300}
.legal-table th{width:28%;background:#f3eee7;color:var(--ink);font-size:13px;letter-spacing:.04em;white-space:nowrap}
.legal-table td{font-size:13px;color:var(--muted)}
@media(max-width:850px){.payment-grid--2{grid-template-columns:1fr;max-width:none}.legal-table th{width:36%;white-space:normal}}
@media(max-width:560px){.legal-table,.legal-table tbody,.legal-table tr,.legal-table th,.legal-table td{display:block;width:100%}.legal-table th{border-bottom:0}}


/* v3 options: styles / fabrics / fillings */
.visual-panel--photo:before,.visual-panel--photo:after{content:none;display:none}
.option-section{padding-top:90px;padding-bottom:90px}
.option-grid{display:grid;gap:22px}
.option-grid--styles{grid-template-columns:repeat(3,1fr)}
.option-grid--fabrics{grid-template-columns:repeat(3,1fr)}
.option-grid--fill{grid-template-columns:repeat(2,1fr)}
.option-card{background:#fffdf9;border:1px solid var(--line);overflow:hidden;display:flex;flex-direction:column;transition:.35s}
.option-card:hover{transform:translateY(-5px);box-shadow:0 18px 36px #44382912}
.option-media{aspect-ratio:4/3;background-size:cover;background-position:center;background-color:#e8dfd4}
.swatch{aspect-ratio:1/1;background-size:cover;background-position:center;background-color:#e8dfd4}
.option-body{padding:22px 22px 24px}
.option-body h3{font-size:22px;margin:0 0 10px}
.option-body p{font-size:13px;margin:0 0 14px;line-height:1.85}
.tags{display:flex;flex-wrap:wrap;gap:8px}
.tags span{display:inline-block;padding:4px 10px;border:1px solid var(--line);background:#f8f5f0;font-size:10px;letter-spacing:.06em;color:var(--muted)}
.plain-card .option-body{padding:28px}
.sample-note{margin:28px 0 0;font-size:12px;color:#938779}
.option-grid--styles .option-card:nth-child(4),.option-grid--styles .option-card:nth-child(5){grid-column:span 1}
@media(min-width:851px){
  .option-grid--styles{grid-template-columns:repeat(6,1fr)}
  .option-grid--styles .option-card{grid-column:span 2}
  .option-grid--styles .option-card:nth-child(4){grid-column:2 / span 2}
  .option-grid--styles .option-card:nth-child(5){grid-column:4 / span 2}
}
@media(max-width:850px){
  .option-grid--styles,.option-grid--fabrics{grid-template-columns:1fr 1fr}
  .option-grid--fill{grid-template-columns:1fr}
  .option-section{padding-top:70px;padding-bottom:70px}
}
@media(max-width:560px){
  .option-grid--styles,.option-grid--fabrics{grid-template-columns:1fr}
  .option-body h3{font-size:20px}
}

/* v4 fixes: remove placeholder shapes, photo cards, mail link */
.visual-panel:before,.visual-panel:after{content:none!important;display:none!important}
.hero-art .orb,.hero-art .sofa-shape{display:none!important}
.hero-photo{background-image:url('assets/hero-living.jpg')!important;background-size:cover;background-position:center 60%}
.card{background:#3a2f25;padding:0;color:#fff}
.card-art{opacity:1;inset:0}
.card:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(40,32,24,.72) 0%,rgba(40,32,24,.35) 32%,rgba(40,32,24,0) 58%);z-index:1;pointer-events:none;transition:.45s}
.card:hover:after{background:linear-gradient(to top,rgba(40,32,24,.8) 0%,rgba(40,32,24,.4) 38%,rgba(40,32,24,0) 65%)}
.card-content{background:none!important;padding:0 26px 24px!important;z-index:2;color:#fbf6ee}
.card-content *{color:#fbf6ee!important;text-shadow:0 1px 10px rgba(30,22,15,.35)}
.card-content .arrow{display:inline-block;border-top:1px solid rgba(251,246,238,.55);padding-top:10px;margin-top:2px}
.mail-link{display:inline-flex;align-items:center;gap:8px;border:1px solid currentColor;padding:8px 16px;font-size:12px;letter-spacing:.12em;text-decoration:none;color:var(--ink);transition:.3s}
.mail-link:hover{background:var(--ink);color:#fff}
.contact-links{display:inline-flex;flex-wrap:wrap;gap:10px}
.ig-icon{display:inline-block;vertical-align:-2px}
.ig-qr{display:flex;gap:16px;align-items:center;margin-top:22px;padding:16px;border:1px solid var(--line);background:#fffdf9}
.ig-qr img{width:120px;height:120px;object-fit:contain}
.ig-qr p{margin:0;font-size:12px}
[hidden]{display:none!important}
/* v5 fabric groups */
.fabric-group{margin-top:46px}
.fabric-group:first-of-type{margin-top:10px}
.fabric-group-head{margin-bottom:20px;max-width:640px}
.fabric-group-head h3{font-size:21px;margin:4px 0 6px}
.fabric-group-head p{font-size:13px;margin:0}
.fab-points{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;margin:10px 0 14px;font-size:12px;line-height:1.65}
.fab-points dt{color:var(--ink);font-weight:400;letter-spacing:.05em;white-space:nowrap}
.fab-points dd{margin:0;color:var(--muted)}
/* v6 interior styles + 4-col fabrics */
.option-grid--interior{grid-template-columns:repeat(3,1fr)}
.option-grid--fabrics4{grid-template-columns:repeat(4,1fr);gap:16px}
.option-grid--fabrics4 .option-body{padding:14px 14px 16px}
.option-grid--fabrics4 .option-body h3{font-size:15px}
.option-grid--fabrics4 .option-body>p{font-size:12px;margin:4px 0 0}
.option-grid--fabrics4 .fab-points{font-size:11px;gap:2px 8px;margin:8px 0 10px}
.option-grid--fabrics4 .tags span{font-size:10px}
@media(max-width:850px){.option-grid--interior{grid-template-columns:1fr 1fr}.option-grid--fabrics4{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.option-grid--interior{grid-template-columns:1fr}.option-grid--fabrics4{grid-template-columns:1fr 1fr;gap:10px}.option-grid--fabrics4 .fab-points{grid-template-columns:1fr}.option-grid--fabrics4 .fab-points dt{margin-top:4px}}
.option-grid--fabrics4 .swatch{aspect-ratio:4/3}

/* v7 interior: 8 cards -> 4 cols */
@media(min-width:851px){.option-grid--interior{grid-template-columns:repeat(4,1fr);gap:18px}}
