:root{--plum:#493246;--deep:#281e2c;--paper:#f7f5f8;--white:#fff;--ink:#352a3a;--muted:#716776;--silver:#a79cae;--mist:#e2dce7;--line:#ddd7e1;--serif:Georgia,'Songti SC','Noto Serif CJK TC','Noto Serif CJK SC','Yu Mincho','Batang',serif;--sans:Arial,'PingFang SC','Microsoft YaHei','Hiragino Kaku Gothic ProN','Malgun Gothic',sans-serif;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:140px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.8 var(--sans)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;width:100%;object-fit:cover}a:focus-visible,button:focus-visible{outline:3px solid var(--silver);outline-offset:5px}.wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}.section{padding-block:96px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h2{font-size:38px;line-height:1.45;letter-spacing:.04em}p{color:var(--muted)}.skip{position:fixed;top:-100px;z-index:25;padding:12px 20px;background:var(--white)}.skip:focus{top:0}
.site-header{position:sticky;top:0;z-index:10;background:var(--deep);color:var(--paper);border-bottom:1px solid #ffffff24}.header-main{min-height:83px;display:flex;align-items:center;gap:36px}.brand{display:inline-flex;flex-direction:column;line-height:1.2}.brand span{font:29px/1.1 Georgia,serif;letter-spacing:.19em}.brand small{font-size:9px;letter-spacing:.2em;margin-top:9px}.main-nav{display:flex;gap:30px;margin-left:auto;font-size:14px}.main-nav a:hover{color:var(--mist)}.header-phone{background:#695073;color:var(--white);padding:9px 18px;text-align:center;line-height:1.45}.header-phone small{display:block;font-size:10px;color:#e9e2ef}.header-phone strong{display:block;font-size:21px;letter-spacing:.025em;white-space:nowrap}.language-row{display:flex;justify-content:flex-end;padding-bottom:11px}.languages{display:flex;align-items:center;gap:25px;font-size:12px}.languages a{border-bottom:1px solid transparent}.languages [aria-current]{border-color:var(--silver)}
.hero{position:relative;min-height:580px;display:grid;place-items:center;isolation:isolate;background:var(--deep);color:var(--white);text-align:center}.hero>picture{position:absolute;inset:0;z-index:0}.hero-image{position:absolute;inset:0;z-index:0;height:100%;object-position:center 52%}.hero-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#28152dd9,#281e2c80),linear-gradient(0deg,#28152d66,transparent)}.hero-content{position:relative;z-index:2;padding-block:54px}.hero-wordmark{font:clamp(56px,7vw,104px)/1.1 Georgia,serif;letter-spacing:.19em;padding-left:.19em;margin-bottom:23px;color:#f1eaf4}.hero h1{font-size:clamp(26px,3vw,38px);letter-spacing:.13em;line-height:1.5;margin-bottom:20px}.hero p{color:#f7f0fa;font-size:17px;letter-spacing:.05em;margin-bottom:31px}.actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}.button{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:218px;min-height:66px;padding:10px 22px;background:var(--mist);border:1px solid var(--mist);color:var(--deep);font-size:13px;line-height:1.7;transition:background .2s,color .2s}.button strong{font-size:17px;letter-spacing:.035em;white-space:nowrap}.button:hover{background:#f2eaf7}.button.secondary{background:transparent;color:inherit;border-color:var(--mist)}.button.secondary:hover{background:#ffffff18}.consult{display:block;font-size:11px;line-height:1.9;margin-top:20px;opacity:.88}.hero .consult{max-width:760px;margin-inline:auto}
.services{background:var(--paper)}.section-heading{text-align:center;margin-bottom:43px}.section-heading h2{margin-bottom:15px}.section-heading p{margin-bottom:0;max-width:840px;margin-inline:auto;font-size:15px}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.service-card{display:block;padding-bottom:20px;border-bottom:1px solid var(--silver)}.card-photo{overflow:hidden;aspect-ratio:4/3;background:#eae5ed}.card-photo img{height:100%;transition:transform .45s}.service-card:hover img{transform:scale(1.035)}.card-text{position:relative;padding-top:23px;padding-right:18px}.service-number{font-size:11px;letter-spacing:.15em;color:#796486}.card-text h3{font-size:22px;line-height:1.5;margin:10px 0 12px}.card-text p{font-size:13px;line-height:1.9;margin:0}.arrow{position:absolute;right:0;top:24px;color:var(--plum);width:21px;height:21px}
.about{background:#ede8f0}.about-grid{display:grid;grid-template-columns:1.06fr 1fr;gap:75px;align-items:center}.about-grid>img{height:420px;object-position:center}.about-copy h2{font-size:35px}.about-copy p{font-size:15px;line-height:2}.section-kicker{display:block;font-size:11px;letter-spacing:.17em;color:#796486;margin-bottom:15px}.text-link{display:inline-block;border-bottom:1px solid var(--silver);padding-block:8px;margin-top:10px;font-size:13px;color:var(--plum)}.text-link span{margin-left:25px}.details>.section-heading{margin-bottom:54px}.details>.section-heading h2{font-size:29px;max-width:950px;margin-inline:auto}.detail{display:grid;grid-template-columns:1.05fr 1fr;gap:72px;align-items:center;padding-block:55px;border-bottom:1px solid var(--line);scroll-margin-top:125px}.detail:last-child{border:0}.detail>img{height:410px}.detail.reverse>img{order:2}.detail#aroma>img{object-position:center 58%}.detail#body>img{object-position:center 50%}.detail#back>img{object-position:center 45%}.detail-copy h2{font-size:33px;margin-bottom:20px}.detail-copy .lead{font-family:var(--serif);font-size:21px;line-height:1.6;color:var(--plum)}.detail-copy p{font-size:14px;line-height:2}.detail-copy ul{list-style:none;display:flex;flex-wrap:wrap;gap:10px 20px;padding:0;margin:20px 0;color:var(--plum);font-size:12px}.detail-copy li{border-bottom:1px solid var(--line);padding-bottom:7px}
.contact{background:var(--plum);color:var(--paper)}.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:90px}.contact h2{font-size:38px}.contact p{color:#e8e2ed;font-size:15px;line-height:1.9}.contact-number{display:block;font-family:Georgia,serif;font-size:clamp(28px,3vw,43px);letter-spacing:.035em;white-space:nowrap;color:#eee5f3;margin-block:22px 30px}.contact .actions{justify-content:flex-start}.contact .button{min-width:195px}.steps{list-style:none;margin:0;padding:0}.steps li{display:flex;gap:24px;padding-block:20px;border-bottom:1px solid #ffffff2d}.steps li>span{font:27px/1.8 Georgia,serif;color:#e2dce7}.steps h3{font-size:22px;margin-bottom:7px}.steps p{font-size:13px;margin:0}.contact-links{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:60px;padding-top:24px;border-top:1px solid #ffffff30;font-size:12px;color:#e5d9ed}.site-footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-block:44px}.site-footer .brand span{font-size:24px}.site-footer p{font-size:10px;max-width:320px;margin:0}.site-footer .languages{gap:16px}.mobile-contact{display:none}.toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);z-index:30;background:var(--deep);color:white;border:1px solid var(--mist);box-shadow:0 5px 30px #0002;padding:14px 25px;max-width:calc(100% - 30px);text-align:center;font-size:14px;opacity:0;pointer-events:none;transition:opacity .2s}.toast.visible{opacity:1}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header-main{gap:23px}.main-nav{gap:18px}.service-grid{gap:18px}.about-grid,.detail{gap:40px}.contact-grid{gap:44px}.card-text h3{font-size:20px}.site-footer{flex-wrap:wrap}}
@media(max-width:760px){html{scroll-padding-top:155px}body{font-size:15px;padding-bottom:76px}.wrap{width:calc(100% - 40px)}.section{padding-block:62px}.header-main{min-height:76px;padding-top:12px;gap:12px;flex-wrap:wrap;justify-content:space-between}.brand span{font-size:22px;letter-spacing:.15em}.brand small{font-size:7px;letter-spacing:.12em}.header-phone{padding:7px 10px}.header-phone strong{font-size:15px;letter-spacing:0}.header-phone small{font-size:8px}.main-nav{order:3;width:100%;margin:0;justify-content:center;gap:25px;font-size:12px;padding-bottom:10px}.language-row{justify-content:center;padding-top:3px;padding-bottom:10px}.languages{gap:24px;font-size:11px}.hero{min-height:560px}.hero-image{object-position:center 55%}.hero-content{padding-block:46px}.hero-wordmark{font-size:44px;letter-spacing:.12em;margin-bottom:25px}.hero h1{font-size:24px;letter-spacing:.04em;line-height:1.6}.hero p{font-size:14px;line-height:1.9;margin-bottom:26px}.hero .actions{gap:10px}.hero .button{min-width:0;width:calc(50% - 5px);padding:10px 6px;font-size:11px}.button strong{font-size:14px;letter-spacing:0}.consult{font-size:10px;line-height:1.8}.section-heading{margin-bottom:30px}.section-heading h2,h2{font-size:29px}.section-heading p{font-size:13px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 18px}.card-text{padding-top:17px;padding-right:0}.card-text h3{font-size:18px;margin-top:10px}.card-text p{font-size:12px;line-height:1.8}.arrow{display:none}.about-grid{grid-template-columns:1fr;gap:34px}.about-grid>img{height:auto;aspect-ratio:3/2}.about-copy h2{font-size:29px}.about-copy p{font-size:14px}.details>.section-heading{margin-bottom:20px}.details>.section-heading h2{font-size:26px}.detail{grid-template-columns:1fr;gap:28px;padding-block:35px}.detail>img{height:auto;aspect-ratio:4/3}.detail.reverse>img{order:0}.detail-copy h2{font-size:28px}.detail-copy .lead{font-size:20px}.detail-copy p{font-size:14px}.detail-copy ul{gap:8px 15px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact h2{font-size:29px}.contact-number{font-size:32px;letter-spacing:0}.contact .actions .button{min-width:0;width:calc(50% - 5px);padding:10px 5px;font-size:11px}.contact-links{margin-top:40px;gap:15px}.site-footer{display:block;padding-block:35px}.site-footer p{margin-block:24px}.site-footer .languages{gap:24px}.mobile-contact{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:15;background:var(--plum);box-shadow:0 -2px 20px #0002}.mobile-contact .button{width:50%;min-width:0;min-height:72px;font-size:11px;padding:9px 4px}.mobile-contact .secondary{color:var(--paper)}.mobile-contact .button strong{font-size:16px}.toast{bottom:90px;font-size:12px;padding:12px 18px}.section-kicker{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
