:root{color:#20211f;font-synthesis:none;text-rendering:optimizelegibility;--ink:#20211f;--muted:#6f6d66;--line:#20211f24;--paper:#fffdf8;--charcoal:#242521;--deep:#303831;--gold:#9d8251;--champagne:#c5ad7a;--wine:#49322f;--soft:#ece8df;--max:1160px;background:#f5f2eb;font-family:Helvetica Neue,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;line-height:1.75}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0}button,a{color:inherit;font:inherit}button{cursor:pointer}p,h1,h2,h3{overflow-wrap:anywhere}.site-header{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf8f0;justify-content:space-between;align-items:center;gap:24px;min-height:82px;padding:0 clamp(18px,4vw,56px);display:flex;position:sticky;top:0}.brand{color:var(--ink);text-align:left;background:0 0;border:0;align-items:center;gap:14px;padding:0;display:flex}.brand strong,.brand small{display:block}.brand strong{letter-spacing:0;font-size:16px}.brand small{color:var(--muted);letter-spacing:0;margin-top:2px;font-size:11px}.brand-mark{object-fit:contain;flex:none;width:52px;height:52px;display:block;box-shadow:0 12px 28px #17171429}.desktop-nav{align-items:stretch;gap:2px;height:82px;display:flex}.desktop-nav button{color:#464741;background:0 0;border:0;min-width:104px;padding:0 14px;font-size:14px;position:relative}.desktop-nav button:after{content:"";background:0 0;height:3px;position:absolute;bottom:0;left:16px;right:16px}.desktop-nav button:hover,.desktop-nav .is-current{color:var(--ink);background:#ece8df8a}.desktop-nav .is-current:after{background:var(--gold)}.menu-button{width:44px;height:44px;color:var(--ink);border:1px solid var(--line);background:0 0;place-items:center;display:none}.menu-button svg{width:22px}.mobile-nav{z-index:19;background:var(--paper);border-bottom:1px solid var(--line);padding:10px 18px 18px;display:grid;position:sticky;top:82px}.mobile-nav button{text-align:left;border:0;border-bottom:1px solid var(--line);background:0 0;min-height:48px;padding:0}.home-hero{color:#fffdf8;align-items:center;min-height:680px;display:grid;position:relative;overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0}.hero-image{background-image:url(/luxury-atelier.png);background-position:50%;background-size:cover}.hero-shade{background:linear-gradient(90deg,#0f0e0de6,#1c1814a3 48%,#1c181433),linear-gradient(#1912100a,#1912105c)}.hero-inner{width:min(820px,100% - 40px);margin:0 auto;position:relative;transform:translate(calc(min(1160px,100vw - 40px)/-2 + min(820px,100vw - 40px)/2))}.label{color:var(--gold);letter-spacing:0;margin:0 0 14px;font-size:12px;font-weight:700}.home-hero h1{letter-spacing:0;text-shadow:0 18px 44px #0000005c;max-width:760px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(46px,7vw,86px);font-weight:400;line-height:1.08}.home-hero h1 span{display:block}.home-hero p{color:#fffdf8e0;max-width:680px;margin:28px 0 0;font-size:clamp(16px,1.7vw,19px)}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:36px;display:flex}.primary-button,.ghost-button{border:1px solid #fffdf861;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:0 22px;display:inline-flex}.primary-button{color:var(--ink);background:#fffdf8}.primary-button svg{width:18px}.ghost-button{color:#fffdf8;background:0 0}.corporate-strip{width:min(var(--max), calc(100% - 40px));z-index:2;background:linear-gradient(135deg, #fffdf8f7, #ede5d5f2), var(--paper);border:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin:-58px auto 0;display:grid;position:relative}.corporate-strip article{border-right:1px solid var(--line);min-height:128px;padding:26px 30px}.corporate-strip article:last-child{border-right:0}.corporate-strip span{color:var(--gold);font-size:12px;font-weight:700;display:block}.corporate-strip strong{margin-top:6px;font-family:Georgia,Times New Roman,serif;font-size:32px;font-weight:400;display:block}.corporate-strip p{color:var(--muted);margin:2px 0 0;font-size:14px}.section{width:min(var(--max), calc(100% - 40px));margin:0 auto;padding:clamp(72px,8vw,112px) 0}.message-section{grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);align-items:center;gap:clamp(34px,6vw,84px);display:grid}.message-copy{gap:18px;padding:clamp(28px,4vw,42px) 0;display:grid}.message-copy h2{margin-bottom:10px}.message-copy p{color:var(--muted);margin:0;font-size:16px}.message-copy .signature{margin-top:10px}.message-image{background:var(--charcoal);border:1px solid #9d825142;min-height:560px;margin:0;position:relative;overflow:hidden}.message-image:before{z-index:1;content:"";pointer-events:none;border:1px solid #fffdf857;position:absolute;inset:18px}.message-image img{object-fit:cover;filter:saturate(.9)contrast(1.06);width:100%;height:100%;min-height:560px;display:block}.two-column{grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:clamp(32px,6vw,80px);display:grid}.section h2,.page-header h1{letter-spacing:0;margin:0;font-family:Georgia,Times New Roman,serif;font-weight:400;line-height:1.15}.section h2{font-size:clamp(32px,4.8vw,58px)}.text-block{gap:18px;display:grid}.text-block p,.formal-panel p,.contact-layout p{color:var(--muted);margin:0;font-size:16px}.signature{text-align:right;font-weight:700;color:var(--ink)!important}.formal-panel{color:#fffdf8;background:linear-gradient(135deg, #242521f5, #49322feb), var(--deep);border:1px solid #9d825152;grid-template-columns:minmax(0,1fr) 120px;align-items:center;gap:28px;padding:clamp(42px,6vw,72px);display:grid}.formal-panel p{color:#fffdf8c7;max-width:740px;font-size:17px}.formal-panel svg{width:76px;height:76px;color:var(--gold);justify-self:end}.quality-section{padding-top:0}.quality-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.quality-grid article{background:linear-gradient(180deg, #fffdf8fa, #f1ebdfe6), var(--paper);border:1px solid #9d825133;min-height:260px;padding:30px}.quality-grid h3{margin:0 0 14px;font-size:22px}.quality-grid p{color:var(--muted);margin:0}.page-header{min-height:300px;padding:78px max(20px, calc((100vw - var(--max)) / 2)) 58px;color:#fffdf8;background:linear-gradient(90deg, #242521f5, #303831e6), var(--charcoal);justify-content:space-between;align-items:center;gap:30px;display:flex}.page-header h1{font-size:clamp(42px,6vw,76px)}.page-header p:last-child{color:#fffdf8b8;margin:18px 0 0}.page-header svg{color:#9d8251b8;width:92px;height:92px}.section-headline{margin-bottom:30px}.profile-table{background:var(--paper);border:1px solid var(--line);margin:0}.profile-table div{border-bottom:1px solid var(--line);grid-template-columns:220px minmax(0,1fr);display:grid}.profile-table div:last-child{border-bottom:0}.profile-table dt,.profile-table dd{padding:18px 24px}.profile-table dt{color:var(--muted);background:#f0ede5;font-weight:700}.profile-table dd{margin:0}.history-list{border-top:1px solid var(--line);display:grid}.history-list article{border-bottom:1px solid var(--line);grid-template-columns:180px minmax(0,1fr);gap:24px;padding:24px 0;display:grid}.history-list time{color:var(--gold);font-weight:700}.history-list p{margin:0}.business-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.business-grid article{background:var(--paper);border:1px solid var(--line);min-height:250px;padding:30px}.business-grid span{color:var(--gold);font-family:Georgia,Times New Roman,serif;font-size:26px}.business-grid h3{margin:22px 0 12px;font-size:22px}.business-grid p{color:var(--muted);margin:0}.detail-panel{color:#fffdf8;background:linear-gradient(135deg, #20211ffa, #49322fe6), var(--charcoal);border:1px solid #9d825147;grid-template-columns:minmax(0,.85fr) minmax(320px,1.15fr);gap:clamp(30px,6vw,82px);padding:clamp(46px,6vw,72px);display:grid}.detail-panel p{color:#fffdf8bd;margin:18px 0 0}.detail-panel ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.detail-panel li{color:#fffdf8db;border-bottom:1px solid #fffdf824;padding:0 0 12px 22px;position:relative}.detail-panel li:before{background:var(--champagne);content:"";width:7px;height:7px;position:absolute;top:.72em;left:0}.strength-list{gap:16px;display:grid}.strength-list p{border-bottom:1px solid var(--line);grid-template-columns:24px minmax(0,1fr);gap:14px;margin:0;padding-bottom:16px;font-size:18px;display:grid}.strength-list svg{width:22px;color:var(--gold);transform:translateY(4px)}.process{padding-top:0}.process-row{border:1px solid var(--line);background:var(--paper);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.process-row article{text-align:center;border-right:1px solid var(--line);align-content:center;justify-items:center;gap:14px;min-height:160px;padding:22px;display:grid}.process-row article:last-child{border-right:0}.process-row svg{width:34px;height:34px;color:var(--gold)}.process-row h3{margin:0;font-size:16px}.contact-layout{grid-template-columns:minmax(0,.95fr) minmax(320px,1.05fr);gap:clamp(30px,6vw,82px);display:grid}.contact-card{background:var(--paper);border:1px solid var(--line)}.contact-card p,.contact-card a{border-bottom:1px solid var(--line);color:var(--ink);grid-template-columns:26px minmax(0,1fr);gap:14px;margin:0;padding:22px 24px;text-decoration:none;display:grid}.contact-card p:last-child,.contact-card a:last-child{border-bottom:0}.contact-card svg{width:22px;color:var(--gold);transform:translateY(4px)}.access-section{padding-top:0}.access-layout{grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);align-items:stretch;gap:22px;display:grid}.access-info{background:var(--paper);border:1px solid var(--line);flex-direction:column;gap:22px;padding:30px;display:flex}.address-line{color:var(--ink);margin:0;font-size:18px;font-weight:700}.access-info ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.access-info li{color:var(--muted);padding-left:18px;position:relative}.access-info li:before{background:var(--gold);content:"";width:6px;height:6px;position:absolute;top:.78em;left:0}.map-link{color:#fffdf8;background:var(--charcoal);justify-content:center;align-items:center;gap:10px;width:fit-content;min-height:48px;margin-top:auto;padding:0 18px;text-decoration:none;display:inline-flex}.map-link svg{width:17px}.map-frame{gap:10px;display:grid}.google-map{border:1px solid var(--line);background:var(--soft);width:100%;min-height:390px}.map-frame p{color:var(--muted);margin:0;font-size:13px}.map-frame a{color:var(--ink);font-weight:700}.site-footer{color:#fffdf8b8;background:#191a18}.footer-inner{width:min(var(--max), calc(100% - 40px));justify-content:space-between;align-items:center;gap:24px;min-height:104px;margin:0 auto;display:flex}.footer-inner div{align-items:center;gap:12px;display:flex}.footer-inner .brand-mark{width:42px;height:42px}.footer-inner p{margin:0;font-size:13px}@media (width<=900px){.desktop-nav{display:none}.menu-button{display:grid}.home-hero{min-height:640px}.hero-inner{transform:none}.corporate-strip,.two-column,.message-section,.business-grid,.quality-grid,.contact-layout,.access-layout,.detail-panel{grid-template-columns:1fr}.corporate-strip article{border-right:0;border-bottom:1px solid var(--line)}.corporate-strip article:last-child{border-bottom:0}.process-row{grid-template-columns:repeat(2,minmax(0,1fr))}.message-image,.message-image img{min-height:420px}.process-row article:nth-child(2){border-right:0}.process-row article:nth-child(-n+2){border-bottom:1px solid var(--line)}.footer-inner{flex-direction:column;align-items:flex-start;padding:28px 0}}@media (width<=620px){.site-header{min-height:74px}.brand small{display:none}.brand-mark{width:46px;height:46px}.mobile-nav{top:74px}.home-hero{min-height:620px}.home-hero h1{font-size:clamp(34px,9vw,46px)}.hero-actions{flex-direction:column}.primary-button,.ghost-button{width:100%}.section{width:calc(100% - 32px);padding:64px 0}.corporate-strip{width:calc(100% - 32px);margin-top:-36px}.formal-panel,.profile-table div,.history-list article,.process-row{grid-template-columns:1fr}.formal-panel{padding:30px 24px}.message-section{gap:26px}.message-copy{padding:0}.message-image,.message-image img{min-height:320px}.formal-panel svg{justify-self:start;width:52px;height:52px}.page-header{min-height:240px;padding:54px 20px 44px}.page-header svg{display:none}.profile-table dt,.profile-table dd{padding:14px 18px}.business-grid article,.quality-grid article{min-height:auto;padding:24px}.detail-panel{padding:30px 24px}.access-info{padding:24px}.google-map{min-height:320px}.process-row article,.process-row article:nth-child(2),.process-row article:nth-child(-n+2){border-right:0;border-bottom:1px solid var(--line)}.process-row article:last-child{border-bottom:0}}
