:root,:host{--fa-font-solid:normal 900 1em/1 "Font Awesome 7 Free";--fa-font-regular:normal 400 1em/1 "Font Awesome 7 Free";--fa-font-light:normal 300 1em/1 "Font Awesome 7 Pro";--fa-font-thin:normal 100 1em/1 "Font Awesome 7 Pro";--fa-font-duotone:normal 900 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-regular:normal 400 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-light:normal 300 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-thin:normal 100 1em/1 "Font Awesome 7 Duotone";--fa-font-brands:normal 400 1em/1 "Font Awesome 7 Brands";--fa-font-sharp-solid:normal 900 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-regular:normal 400 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-light:normal 300 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-thin:normal 100 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-duotone-solid:normal 900 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-regular:normal 400 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-light:normal 300 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-thin:normal 100 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-slab-regular:normal 400 1em/1 "Font Awesome 7 Slab";--fa-font-slab-press-regular:normal 400 1em/1 "Font Awesome 7 Slab Press";--fa-font-whiteboard-semibold:normal 600 1em/1 "Font Awesome 7 Whiteboard";--fa-font-thumbprint-light:normal 300 1em/1 "Font Awesome 7 Thumbprint";--fa-font-notdog-solid:normal 900 1em/1 "Font Awesome 7 Notdog";--fa-font-notdog-duo-solid:normal 900 1em/1 "Font Awesome 7 Notdog Duo";--fa-font-etch-solid:normal 900 1em/1 "Font Awesome 7 Etch";--fa-font-graphite-thin:normal 100 1em/1 "Font Awesome 7 Graphite";--fa-font-jelly-regular:normal 400 1em/1 "Font Awesome 7 Jelly";--fa-font-jelly-fill-regular:normal 400 1em/1 "Font Awesome 7 Jelly Fill";--fa-font-jelly-duo-regular:normal 400 1em/1 "Font Awesome 7 Jelly Duo";--fa-font-chisel-regular:normal 400 1em/1 "Font Awesome 7 Chisel";--fa-font-utility-semibold:normal 600 1em/1 "Font Awesome 7 Utility";--fa-font-utility-duo-semibold:normal 600 1em/1 "Font Awesome 7 Utility Duo";--fa-font-utility-fill-semibold:normal 600 1em/1 "Font Awesome 7 Utility Fill"}.svg-inline--fa{box-sizing:content-box;display:var(--fa-display,inline-block);vertical-align:-.125em;height:1em;width:var(--fa-width,1.25em);overflow:visible}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0}.svg-inline--fa.fa-sm{vertical-align:-.0714286em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa.fa-pull-left,.svg-inline--fa .fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin,.3em)}.svg-inline--fa.fa-pull-right,.svg-inline--fa .fa-pull-end{float:inline-end;margin-inline-start:var(--fa-pull-margin,.3em)}.svg-inline--fa.fa-li{width:var(--fa-li-width,2em);inset-block-start:.25em;inset-inline-start:calc(-1 * var(--fa-li-width,2em))}.fa-layers-counter,.fa-layers-text{text-align:center;display:inline-block;position:absolute}.fa-layers{text-align:center;vertical-align:-.125em;height:1em;width:var(--fa-width,1.25em);display:inline-block;position:relative}.fa-layers .svg-inline--fa{transform-origin:50%;margin:auto;position:absolute;inset:0}.fa-layers-text{transform-origin:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.fa-layers-counter{background-color:var(--fa-counter-background-color,#ff253a);border-radius:var(--fa-counter-border-radius,1em);box-sizing:border-box;color:var(--fa-inverse,#fff);line-height:var(--fa-counter-line-height,1);max-width:var(--fa-counter-max-width,5em);min-width:var(--fa-counter-min-width,1.5em);padding:var(--fa-counter-padding,.25em .5em);right:var(--fa-right,0);text-overflow:ellipsis;top:var(--fa-top,0);transform:scale(var(--fa-counter-scale,.25));transform-origin:100% 0;overflow:hidden}.fa-layers-bottom-right{bottom:var(--fa-bottom,0);right:var(--fa-right,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:100% 100%;top:auto}.fa-layers-bottom-left{bottom:var(--fa-bottom,0);left:var(--fa-left,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:0 100%;top:auto;right:auto}.fa-layers-top-right{top:var(--fa-top,0);right:var(--fa-right,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:100% 0}.fa-layers-top-left{left:var(--fa-left,0);right:auto;top:var(--fa-top,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:0 0}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{vertical-align:.225em;font-size:.625em;line-height:.1em}.fa-xs{vertical-align:.125em;font-size:.75em;line-height:.0833333em}.fa-sm{vertical-align:.0535715em;font-size:.875em;line-height:.0714286em}.fa-lg{vertical-align:-.075em;font-size:1.25em;line-height:.05em}.fa-xl{vertical-align:-.125em;font-size:1.5em;line-height:.0416667em}.fa-2xl{vertical-align:-.1875em;font-size:2em;line-height:.03125em}.fa-width-auto{--fa-width:auto}.fa-fw,.fa-width-fixed{--fa-width:1.25em}.fa-ul{margin-inline-start:var(--fa-li-margin,2.5em);padding-inline-start:0;list-style-type:none}.fa-ul>li{position:relative}.fa-li{text-align:center;width:var(--fa-li-width,2em);line-height:inherit;position:absolute;inset-inline-start:calc(-1 * var(--fa-li-width,2em))}.fa-border{border-color:var(--fa-border-color,#eee);border-radius:var(--fa-border-radius,.1em);border-style:var(--fa-border-style,solid);border-width:var(--fa-border-width,.0625em);box-sizing:var(--fa-border-box-sizing,content-box);padding:var(--fa-border-padding,.1875em .25em)}.fa-pull-left,.fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin,.3em)}.fa-pull-right,.fa-pull-end{float:inline-end;margin-inline-start:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28, .84, .42, 1))}.fa-fade{animation-name:fa-fade;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4, 0, .6, 1))}.fa-beat-fade{animation-name:fa-beat-fade;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4, 0, .6, 1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin{animation-name:fa-spin;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-bounce,.fa-fade,.fa-beat-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{transition:none!important;animation:none!important}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-bounce{0%{transform:scale(1)translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x,1.1), var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x,.9), var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x,1.05), var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{transform:scale(1, 1) translateY(var(--fa-bounce-rebound,-.125em))}64%{transform:scale(1)translateY(0)}to{transform:scale(1)translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), var(--fa-flip-angle,-180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}8%,24%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,0))}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor);opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.svg-inline--fa.fa-inverse{fill:var(--fa-inverse,#fff)}.fa-stack{vertical-align:middle;width:2.5em;height:2em;line-height:2em;display:inline-block;position:relative}.fa-inverse{color:var(--fa-inverse,#fff)}.svg-inline--fa.fa-stack-1x{--fa-width:1.25em;height:1em;width:var(--fa-width)}.svg-inline--fa.fa-stack-2x{--fa-width:2.5em;height:2em;width:var(--fa-width)}.fa-stack-1x,.fa-stack-2x{z-index:var(--fa-stack-z-index,auto);margin:auto;position:absolute;inset:0}
:root{--color-white:#fff;--color-off-white:#faf8f5;--color-beige:#f2ede4;--color-beige-mid:#ddd3c3;--color-brown-lt:#c4a882;--color-brown:#9c7b55;--color-brown-dk:#6b4f35;--color-text:#3a3028;--color-text-mid:#6b5d52;--color-text-lt:#a8978c;--color-accent:#b07d4f;--color-border:#e5ddd3;--font-sans:var(--font-noto-sans-jp), "Hiragino Kaku Gothic ProN", sans-serif;--font-serif:var(--font-noto-serif-jp), "Hiragino Mincho ProN", serif;--fw-regular:400;--fw-medium:500;--fw-bold:700;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--shadow-sm:0 1px 4px #3a302814;--shadow-md:0 4px 16px #3a30281a;--shadow-lg:0 8px 32px #3a302824;--trans:.3s ease;--container:1100px;--header-h:72px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-sans);color:var(--color-text);background:var(--color-white);-webkit-font-smoothing:antialiased;line-height:1.7}img{max-width:100%;height:auto;display:block}a{color:inherit;transition:opacity var(--trans);text-decoration:none}a:hover{opacity:.75}ul,ol{list-style:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}.container{width:min(var(--container), 100% - 2rem);margin-inline:auto}.section{padding-block:clamp(60px,8vw,100px)}.section--beige{background:var(--color-off-white)}.section--dark{background:var(--color-brown-dk);color:var(--color-white)}.section-head{text-align:center;margin-bottom:clamp(36px,5vw,56px)}.section-head__label{font-size:.75rem;font-weight:var(--fw-bold);letter-spacing:.2em;text-transform:uppercase;color:var(--color-brown);margin-bottom:.6rem;display:inline-block}.section-head__title{font-family:var(--font-serif);font-size:clamp(1.6rem,3vw,2.4rem);font-weight:var(--fw-bold);color:var(--color-text);line-height:1.3}.section--dark .section-head__title{color:var(--color-white)}.section-head__desc{color:var(--color-text-mid);margin-top:.9rem;max-width:560px;margin-inline:auto;font-size:clamp(.875rem,1.5vw,1rem)}.section--dark .section-head__desc{color:#ffffffbf}.btn{border-radius:var(--radius-full);font-size:.9375rem;font-weight:var(--fw-bold);transition:background var(--trans), transform var(--trans), box-shadow var(--trans);cursor:pointer;align-items:center;gap:.5em;padding:.8em 2em;display:inline-flex}.btn:hover{box-shadow:var(--shadow-md);opacity:1;transform:translateY(-2px)}.btn--primary{background:var(--color-accent);color:var(--color-white)}.btn--primary:hover{background:var(--color-brown-dk)}.btn--outline{border:2px solid var(--color-white);color:var(--color-white);background:0 0}.btn--outline:hover{background:#ffffff1f}.btn--white{background:var(--color-white);color:var(--color-accent)}.btn--white:hover{background:var(--color-beige)}.btn--ghost{border:2px solid var(--color-accent);color:var(--color-accent);background:0 0}.btn--ghost:hover{background:var(--color-accent);color:var(--color-white)}.btn--lg{padding:1em 2.6em;font-size:1.0625rem}.btn--sm{padding:.55em 1.4em;font-size:.8125rem}.badge{border-radius:var(--radius-full);font-size:.72rem;font-weight:var(--fw-bold);letter-spacing:.06em;padding:.25em .85em;display:inline-block}.badge--accent{background:var(--color-accent);color:var(--color-white)}.badge--beige{background:var(--color-beige-mid);color:var(--color-brown-dk)}.site-header{height:var(--header-h);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--color-border);z-index:1000;transition:box-shadow var(--trans);background:#fffffff5;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.site-header.scrolled{box-shadow:var(--shadow-md)}.site-header__inner{width:min(var(--container), 100% - 2rem);justify-content:space-between;align-items:center;margin-inline:auto;display:flex}.site-header__logo{flex-direction:column;gap:2px;line-height:1;display:flex}.logo-main{font-family:var(--font-serif);font-size:1.25rem;font-weight:var(--fw-bold);color:var(--color-brown-dk);letter-spacing:.04em}.logo-sub{color:var(--color-text-lt);letter-spacing:.12em;font-size:.6rem}.site-nav{align-items:center;gap:2rem;display:flex}.site-nav__list{gap:1.75rem;display:flex}.site-nav__link{font-size:.875rem;font-weight:var(--fw-medium);color:var(--color-text-mid);padding-bottom:2px;position:relative}.site-nav__link:after{content:"";background:var(--color-accent);width:0;height:2px;transition:width var(--trans);position:absolute;bottom:0;left:0}.site-nav__link:hover{color:var(--color-text);opacity:1}.site-nav__link:hover:after,.site-nav__link.active:after{width:100%}.site-nav__cta{border-radius:var(--radius-full);background:var(--color-accent);color:var(--color-white);font-size:.875rem;font-weight:var(--fw-bold);transition:background var(--trans), transform var(--trans);padding:.6em 1.5em}.site-nav__cta:hover{background:var(--color-brown-dk);opacity:1;transform:translateY(-1px)}.hamburger{flex-direction:column;gap:5px;width:40px;padding:8px;display:none}.hamburger span{background:var(--color-text);height:2px;transition:transform var(--trans), opacity var(--trans);border-radius:2px;display:block}.hamburger.active span:first-child{transform:translateY(7px)rotate(45deg)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mobile-menu{top:var(--header-h);z-index:999;background:#fffffffa;padding:2rem;display:none;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.mobile-menu.open{flex-direction:column;gap:1rem;display:flex}.mobile-menu__link{font-size:1.1rem;font-weight:var(--fw-medium);color:var(--color-text);border-bottom:1px solid var(--color-border);padding:1rem 0;display:block}.mobile-menu__cta{border-radius:var(--radius-full);background:var(--color-accent);color:var(--color-white);font-size:1rem;font-weight:var(--fw-bold);text-align:center;margin-top:1.5rem;padding:1rem;display:block}.hero{align-items:center;height:100svh;min-height:560px;display:flex;position:relative;overflow:hidden}.hero__slider{position:absolute;inset:0}.hero__slide{opacity:0;background-position:50%;background-size:cover;transition:opacity 1s;position:absolute;inset:0}.hero__slide.active{opacity:1}.hero__overlay{background:linear-gradient(135deg,#3a30288c 0%,#6b4f3559 100%);position:absolute;inset:0}.hero__content{z-index:2;color:var(--color-white);max-width:680px;padding-top:var(--header-h);position:relative}.hero__label{border-radius:var(--radius-full);letter-spacing:.2em;text-transform:uppercase;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1a;border:1px solid #fff9;margin-bottom:1.4rem;padding:.35em 1.1em;font-size:.75rem;display:inline-block}.hero__title{font-family:var(--font-serif);font-size:clamp(2rem,5vw,3.75rem);font-weight:var(--fw-bold);text-shadow:0 2px 12px #0003;margin-bottom:1.2rem;line-height:1.25}.hero__title em{color:var(--color-brown-lt);font-style:normal;display:block}.hero__desc{color:#ffffffe6;max-width:480px;margin-bottom:2rem;font-size:clamp(.9rem,1.5vw,1.0625rem);line-height:1.85}.hero__btns{flex-wrap:wrap;gap:1rem;display:flex}.hero__dots{z-index:2;gap:.6rem;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.hero__dot{cursor:pointer;width:8px;height:8px;transition:background var(--trans), transform var(--trans);background:#fff6;border:none;border-radius:50%}.hero__dot.active{background:var(--color-white);transform:scale(1.25)}.hero__scroll{z-index:2;color:#ffffffb3;letter-spacing:.15em;text-transform:uppercase;flex-direction:column;align-items:center;gap:.4rem;font-size:.65rem;display:flex;position:absolute;bottom:2.5rem;right:2rem}.hero__scroll-line{background:#ffffff80;width:1px;height:48px;animation:1.8s ease-in-out infinite scrollLine}@keyframes scrollLine{0%{transform-origin:top;transform:scaleY(0)}50%{transform-origin:top;transform:scaleY(1)}51%{transform-origin:bottom;transform:scaleY(1)}to{transform-origin:bottom;transform:scaleY(0)}}.strength-bar{background:var(--color-brown-dk);color:var(--color-white);padding-block:2rem}.strength-bar__inner{flex-wrap:wrap;justify-content:center;gap:clamp(2rem,6vw,5rem);display:flex}.strength-item{text-align:center}.strength-item__num{font-family:var(--font-serif);font-size:clamp(2rem,4vw,3rem);font-weight:var(--fw-bold);color:var(--color-brown-lt);line-height:1;display:block}.strength-item__num sup{vertical-align:super;font-size:.55em}.strength-item__label{color:#ffffffb3;letter-spacing:.06em;margin-top:.4rem;font-size:.75rem;display:block}.concern-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;display:grid}.concern-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:transform var(--trans), box-shadow var(--trans);align-items:flex-start;gap:1rem;padding:1.75rem 1.5rem;display:flex}.concern-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.concern-card__icon{border-radius:var(--radius-md);background:var(--color-beige);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.25rem;display:flex}.concern-card__text{color:var(--color-text-mid);font-size:.9375rem;line-height:1.6}.concern-card__text strong{color:var(--color-text);margin-bottom:.25rem;font-size:1rem;display:block}.about-wrap{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2rem,6vw,5rem);display:grid}.about-img{border-radius:var(--radius-xl);aspect-ratio:4/3;box-shadow:var(--shadow-lg);overflow:hidden}.about-img img{object-fit:cover;width:100%;height:100%}.about-tag{background:var(--color-beige);color:var(--color-brown-dk);font-size:.75rem;font-weight:var(--fw-bold);border-radius:var(--radius-full);letter-spacing:.1em;margin-bottom:1rem;padding:.3em 1em;display:inline-block}.about-title{font-family:var(--font-serif);font-size:clamp(1.4rem,2.5vw,2rem);font-weight:var(--fw-bold);margin-bottom:1.2rem;line-height:1.45}.about-desc{color:var(--color-text-mid);margin-bottom:1.5rem;font-size:.9375rem;line-height:1.9}.about-features{flex-direction:column;gap:.6rem;margin-bottom:2rem;display:flex}.about-feature{align-items:center;gap:.75rem;font-size:.9rem;display:flex}.about-feature:before{content:"";background:var(--color-accent);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='white'%3E%3Cpath fill-rule='evenodd' d='M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z' clip-rule='evenodd'/%3E%3C/svg%3E");background-size:cover;border-radius:50%;flex-shrink:0;width:20px;height:20px}.service-main{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);grid-template-columns:1fr 1fr;align-items:center;gap:clamp(1.5rem,4vw,3rem);margin-bottom:2.5rem;display:grid;overflow:hidden}.service-main__img{aspect-ratio:4/3;overflow:hidden}.service-main__img img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.service-main:hover .service-main__img img{transform:scale(1.05)}.service-main__body{padding:clamp(1.5rem,3vw,2.5rem)}.service-main__num{font-size:.7rem;font-weight:var(--fw-bold);letter-spacing:.2em;color:var(--color-text-lt);margin-bottom:.5rem}.service-main__title{font-family:var(--font-serif);font-size:clamp(1.4rem,2.5vw,1.875rem);font-weight:var(--fw-bold);margin-bottom:.75rem;line-height:1.3}.service-main__desc{color:var(--color-text-mid);margin-bottom:1rem;font-size:.9rem;line-height:1.85}.service-main__tags{flex-wrap:wrap;gap:.4rem;margin-bottom:1.5rem;display:flex}.service-tag{border-radius:var(--radius-full);background:var(--color-beige);color:var(--color-brown-dk);border:1px solid var(--color-beige-mid);padding:.25em .8em;font-size:.75rem}.service-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;display:grid}.service-card{background:var(--color-white);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);transition:transform var(--trans), box-shadow var(--trans);overflow:hidden}.service-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-6px)}.service-card__img{aspect-ratio:4/3;overflow:hidden}.service-card__img img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.service-card:hover .service-card__img img{transform:scale(1.08)}.service-card__body{padding:1.25rem 1.25rem 1.5rem}.service-card__num{font-size:.65rem;font-weight:var(--fw-bold);letter-spacing:.15em;color:var(--color-text-lt);margin-bottom:.3rem}.service-card__title{font-size:1.0625rem;font-weight:var(--fw-bold);margin-bottom:.4rem}.service-card__desc{color:var(--color-text-mid);font-size:.8125rem;line-height:1.7}.works-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.works-card{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);transition:transform var(--trans), box-shadow var(--trans);overflow:hidden}.works-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-6px)}.works-card__img{aspect-ratio:4/3;position:relative;overflow:hidden}.works-card__img img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.works-card:hover .works-card__img img{transform:scale(1.08)}.works-card__cat{border-radius:var(--radius-full);font-size:.7rem;font-weight:var(--fw-bold);background:var(--color-accent);color:var(--color-white);padding:.25em .8em;position:absolute;top:12px;left:12px}.works-card__body{padding:1.25rem 1.25rem 1.5rem}.works-card__title{font-size:1rem;font-weight:var(--fw-bold);margin-bottom:.35rem}.works-card__meta{color:var(--color-text-lt);font-size:.78rem}.reason-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.reason-card{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);transition:transform var(--trans), box-shadow var(--trans);padding:2.25rem 2rem;position:relative;overflow:hidden}.reason-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}.reason-card__num{font-family:var(--font-serif);font-size:3.5rem;font-weight:var(--fw-bold);color:var(--color-beige);-webkit-user-select:none;user-select:none;line-height:1;position:absolute;top:1.5rem;right:1.5rem}.reason-card__icon{border-radius:var(--radius-md);background:var(--color-beige);justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:1.25rem;font-size:1.5rem;display:flex}.reason-card__title{font-size:1.125rem;font-weight:var(--fw-bold);margin-bottom:.6rem}.reason-card__desc{color:var(--color-text-mid);font-size:.875rem;line-height:1.85}.client-intro{text-align:center;color:var(--color-text-mid);margin-bottom:2rem;font-size:.9rem}.client-list{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.client-item{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);font-size:.9375rem;font-weight:var(--fw-medium);color:var(--color-text-mid);box-shadow:var(--shadow-sm);transition:border-color var(--trans), color var(--trans), transform var(--trans);padding:.75rem 1.75rem}.client-item:hover{border-color:var(--color-brown-lt);color:var(--color-brown-dk);transform:translateY(-2px)}.flow-list{grid-template-columns:repeat(5,1fr);gap:0;display:grid;position:relative}.flow-list:before{content:"";background:var(--color-beige-mid);height:2px;position:absolute;top:36px;left:calc(10% + 26px);right:calc(10% + 26px)}.flow-item{text-align:center;padding:0 .75rem;position:relative}.flow-item__step{background:var(--color-accent);width:52px;height:52px;color:var(--color-white);font-size:.8rem;font-weight:var(--fw-bold);z-index:1;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1rem;display:flex;position:relative}.flow-item__icon{margin-bottom:.6rem;font-size:1.2rem}.flow-item__title{font-size:.875rem;font-weight:var(--fw-bold);margin-bottom:.3rem}.flow-item__desc{color:var(--color-text-mid);font-size:.75rem;line-height:1.6}.enzyme-banner{border-radius:var(--radius-xl);background:linear-gradient(135deg,#4a7c59 0%,#2d5a3d 100%);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem;padding:clamp(2rem,5vw,3.5rem);display:flex;position:relative;overflow:hidden}.enzyme-banner:before{content:"🌿";opacity:.12;pointer-events:none;font-size:8rem;position:absolute;top:50%;right:10%;transform:translateY(-50%)}.enzyme-banner__badge{border-radius:var(--radius-full);color:#ffffffe6;letter-spacing:.1em;background:#fff3;margin-bottom:.5rem;padding:.25em .9em;font-size:.7rem;display:inline-block}.enzyme-banner__title{font-family:var(--font-serif);font-size:clamp(1.3rem,2.5vw,1.875rem);font-weight:var(--fw-bold);color:var(--color-white);margin-bottom:.5rem}.enzyme-banner__desc{color:#fffc;max-width:480px;font-size:.9rem}.enzyme-banner__btn{border-radius:var(--radius-full);background:var(--color-white);color:#2d5a3d;font-size:.9375rem;font-weight:var(--fw-bold);white-space:nowrap;transition:transform var(--trans), box-shadow var(--trans);flex-shrink:0;align-items:center;gap:.5em;padding:.85em 2.2em;display:inline-flex}.enzyme-banner__btn:hover{opacity:1;transform:translateY(-2px);box-shadow:0 6px 20px #0003}.cta-section{padding-block:clamp(70px,10vw,120px);position:relative;overflow:hidden}.cta-bg{background-position:50%;background-size:cover;position:absolute;inset:0}.cta-overlay{background:linear-gradient(135deg,#3a3028b3 0%,#6b4f358c 100%);position:absolute;inset:0}.cta-content{z-index:1;text-align:center;color:var(--color-white);position:relative}.cta-content__label{border-radius:var(--radius-full);letter-spacing:.2em;border:1px solid #ffffff80;margin-bottom:1.2rem;padding:.3em 1.2em;font-size:.75rem;display:inline-block}.cta-content__title{font-family:var(--font-serif);font-size:clamp(1.6rem,3.5vw,2.75rem);font-weight:var(--fw-bold);margin-bottom:.9rem;line-height:1.35}.cta-content__desc{color:#ffffffd9;margin-bottom:2rem;font-size:clamp(.875rem,1.5vw,1rem);line-height:1.9}.cta-content__free{border-radius:var(--radius-full);color:#ffffffe6;background:#ffffff26;margin-bottom:2rem;padding:.4em 1.4em;font-size:.8125rem;display:inline-block}.cta-btns{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.company-table{border-collapse:collapse;width:100%}.company-table tr{border-bottom:1px solid var(--color-border)}.company-table tr:first-child{border-top:1px solid var(--color-border)}.company-table th{text-align:left;width:160px;font-size:.875rem;font-weight:var(--fw-bold);color:var(--color-brown-dk);white-space:nowrap;vertical-align:top;padding:1rem 1.25rem}.company-table td{color:var(--color-text-mid);padding:1rem 1.25rem;font-size:.9rem;line-height:1.7}.site-footer{background:var(--color-text);color:#fffc;padding-top:4rem}.site-footer__main{border-bottom:1px solid #ffffff1a;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:clamp(1.5rem,4vw,3rem);padding-bottom:3rem;display:grid}.footer-brand__logo{font-family:var(--font-serif);font-size:1.25rem;font-weight:var(--fw-bold);color:var(--color-white);margin-bottom:.5rem}.footer-brand__desc{color:#fff9;max-width:280px;margin-bottom:1.25rem;font-size:.8125rem;line-height:1.8}.footer-contact-item{color:#ffffffb3;align-items:center;gap:.6rem;margin-bottom:.5rem;font-size:.8125rem;display:flex}.footer-contact-item i{color:var(--color-brown-lt);font-size:.875rem}.footer-nav__heading{font-size:.75rem;font-weight:var(--fw-bold);letter-spacing:.15em;text-transform:uppercase;color:#fff6;margin-bottom:.9rem}.footer-nav__list{flex-direction:column;gap:.5rem;display:flex}.footer-nav__link{color:#ffffffa6;transition:color var(--trans);font-size:.8125rem}.footer-nav__link:hover{color:var(--color-white);opacity:1}.site-footer__bottom{color:#fff6;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding-block:1.25rem;font-size:.75rem;display:flex}.footer-seo{color:#ffffff40;text-align:center;padding:1.5rem 0 .5rem;font-size:.7rem;line-height:1.8}.page-hero{padding-top:var(--header-h);background:var(--color-beige);padding-bottom:0;position:relative;overflow:hidden}.page-hero__inner{z-index:1;padding-block:clamp(3rem,6vw,5rem);position:relative}.page-hero__label{font-size:.75rem;font-weight:var(--fw-bold);letter-spacing:.3em;text-transform:uppercase;color:var(--color-brown);margin-bottom:.5rem;display:block}.page-hero__title{font-family:var(--font-serif);font-size:clamp(2rem,4vw,3.25rem);font-weight:var(--fw-bold);color:var(--color-text);margin-bottom:.6rem}.page-hero__desc{color:var(--color-text-mid);max-width:520px;font-size:clamp(.875rem,1.5vw,1rem)}.page-hero__deco{background:radial-gradient(circle, var(--color-beige-mid) 0%, transparent 70%);opacity:.5;pointer-events:none;border-radius:50%;width:380px;height:380px;position:absolute;top:50%;right:-5%;transform:translateY(-50%)}.breadcrumb{color:var(--color-text-lt);align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.75rem;display:flex}.breadcrumb a{color:var(--color-text-lt)}.breadcrumb a:hover{color:var(--color-accent);opacity:1}.breadcrumb span:before{content:"/";margin-right:.5rem}.fade-up{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(28px)}.fade-up.visible{opacity:1;transform:translateY(0)}.scroll-top{background:var(--color-accent);width:46px;height:46px;color:var(--color-white);cursor:pointer;box-shadow:var(--shadow-md);opacity:0;transition:opacity var(--trans), transform var(--trans), background var(--trans);z-index:900;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;display:flex;position:fixed;bottom:2rem;right:2rem;transform:translateY(10px)}.scroll-top.visible{opacity:1;transform:translateY(0)}.scroll-top:hover{background:var(--color-brown-dk)}@media (max-width:1024px){.site-footer__main{grid-template-columns:1fr 1fr}}@media (max-width:768px){:root{--header-h:64px}.site-nav__list,.site-nav__cta{display:none}.hamburger{display:flex}.about-wrap{grid-template-columns:1fr}.about-img{max-width:500px;margin-inline:auto}.service-main{grid-template-columns:1fr}.flow-list{grid-template-columns:1fr;gap:1.25rem}.flow-list:before{display:none}.flow-item{text-align:left;align-items:flex-start;gap:1rem;padding:0;display:flex}.flow-item__step{flex-shrink:0}.site-footer__main{grid-template-columns:1fr 1fr}.site-footer__bottom{text-align:center;flex-direction:column}}@media (max-width:480px){.hero__btns{flex-direction:column}.cta-btns{flex-direction:column;align-items:center}.site-footer__main{grid-template-columns:1fr}.company-table th{width:100px}.strength-bar__inner{gap:1.5rem}}.service-detail{border-bottom:1px solid var(--color-border);padding-block:clamp(60px,8vw,100px)}.service-detail:nth-child(2n){background:var(--color-off-white)}.service-detail__inner{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2rem,5vw,4rem);display:grid}.service-detail__inner--rev{direction:rtl}.service-detail__inner--rev>*{direction:ltr}.service-detail__img{border-radius:var(--radius-xl);aspect-ratio:4/3;box-shadow:var(--shadow-lg);overflow:hidden}.service-detail__img img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.service-detail__img:hover img{transform:scale(1.04)}.service-detail__badge{border-radius:var(--radius-full);font-size:.72rem;font-weight:var(--fw-bold);background:var(--color-beige);color:var(--color-brown-dk);letter-spacing:.06em;align-items:center;gap:.4rem;margin-bottom:.7rem;padding:.3em 1em;display:inline-flex}.service-detail__num{font-size:.7rem;font-weight:var(--fw-bold);letter-spacing:.2em;color:var(--color-text-lt);margin-bottom:.4rem}.service-detail__title{font-family:var(--font-serif);font-size:clamp(1.4rem,2.5vw,2rem);font-weight:var(--fw-bold);margin-bottom:.9rem;line-height:1.35}.service-detail__desc{color:var(--color-text-mid);margin-bottom:1rem;font-size:.9375rem;line-height:1.9}.service-detail__points{flex-direction:column;gap:.5rem;margin-bottom:1.5rem;display:flex}.service-detail__point{align-items:flex-start;gap:.6rem;font-size:.9rem;display:flex}.service-detail__point i{color:var(--color-accent);flex-shrink:0;margin-top:.2rem}.works-section{padding-block:clamp(60px,8vw,100px)}.works-placeholder{text-align:center;background:var(--color-beige);border-radius:var(--radius-xl);border:2px dashed var(--color-beige-mid);padding:4rem 2rem}.works-placeholder__icon{margin-bottom:1rem;font-size:3rem}.works-placeholder__title{font-size:1.25rem;font-weight:var(--fw-bold);margin-bottom:.5rem}.works-placeholder__desc{color:var(--color-text-mid);max-width:400px;margin-inline:auto;font-size:.9rem;line-height:1.8}.cta-narrow{background:var(--color-brown-dk);border-radius:var(--radius-xl);text-align:center;color:var(--color-white);padding:clamp(2rem,5vw,3.5rem)}.cta-narrow__title{font-family:var(--font-serif);font-size:clamp(1.3rem,2.5vw,1.875rem);font-weight:var(--fw-bold);margin-bottom:.75rem}.cta-narrow__desc{color:#fffc;margin-bottom:1.75rem;font-size:.9375rem;line-height:1.85}.cta-narrow__free{border-radius:var(--radius-full);color:#fffc;border:1px solid #fff6;margin-bottom:1.75rem;padding:.3em 1.2em;font-size:.78rem;display:inline-block}@media (max-width:768px){.service-detail__inner,.service-detail__inner--rev{direction:ltr;grid-template-columns:1fr}}.company-overview-table{border-collapse:collapse;background:var(--color-white);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-sm);overflow:hidden}.company-overview-table tr{border-bottom:1px solid var(--color-border)}.company-overview-table tr:last-child{border-bottom:none}.company-overview-table th{text-align:left;width:180px;font-size:.875rem;font-weight:var(--fw-bold);color:var(--color-brown-dk);background:var(--color-beige);vertical-align:top;white-space:nowrap;border-right:1px solid var(--color-border);padding:1.1rem 1.5rem}.company-overview-table td{color:var(--color-text);padding:1.1rem 1.5rem;font-size:.9375rem;line-height:1.75}.history-timeline{max-width:680px;padding-left:2.5rem;position:relative}.history-timeline:before{content:"";background:var(--color-beige-mid);width:2px;position:absolute;top:8px;bottom:8px;left:10px}.history-item{margin-bottom:2rem;position:relative}.history-item:last-child{margin-bottom:0}.history-item:before{content:"";background:var(--color-accent);border:3px solid var(--color-white);width:12px;height:12px;box-shadow:0 0 0 2px var(--color-accent);border-radius:50%;position:absolute;top:6px;left:-2.1rem}.history-item__year{font-size:.75rem;font-weight:var(--fw-bold);letter-spacing:.1em;color:var(--color-brown);margin-bottom:.2rem}.history-item__event{font-size:.9375rem;font-weight:var(--fw-bold);color:var(--color-text);margin-bottom:.2rem}.history-item__desc{color:var(--color-text-mid);font-size:.8125rem;line-height:1.65}.client-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.client-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-sm);transition:border-color var(--trans), transform var(--trans), box-shadow var(--trans);padding:1.5rem 1.25rem}.client-card:hover{border-color:var(--color-brown-lt);box-shadow:var(--shadow-md);transform:translateY(-3px)}.client-card__icon{margin-bottom:.75rem;font-size:1.75rem}.client-card__name{font-size:.9375rem;font-weight:var(--fw-bold);color:var(--color-text)}.client-card__type{color:var(--color-text-lt);margin-top:.25rem;font-size:.75rem}.area-visual{background:var(--color-beige);border-radius:var(--radius-xl);text-align:center;border:2px solid var(--color-beige-mid);padding:3rem 2rem}.area-visual__icon{margin-bottom:1rem;font-size:3rem}.area-visual__title{font-size:1.25rem;font-weight:var(--fw-bold);margin-bottom:1rem}.area-tags{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-bottom:1rem;display:flex}.area-tag{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:.875rem;font-weight:var(--fw-medium);padding:.4em 1.1em}@media (max-width:640px){.company-overview-table th{width:110px}}.merit-grid{grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:3rem;display:grid}.merit-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-sm);padding:1.5rem 1.25rem}.merit-card__icon{margin-bottom:.75rem;font-size:1.75rem}.merit-card__title{font-size:.9rem;font-weight:var(--fw-bold);color:var(--color-text);margin-bottom:.3rem}.merit-card__desc{color:var(--color-text-lt);font-size:.75rem;line-height:1.65}.contact-layout{grid-template-columns:1fr 340px;align-items:start;gap:3rem;display:grid}.contact-form{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);border:1px solid var(--color-border);padding:clamp(1.5rem,4vw,2.5rem)}.form-group{margin-bottom:1.5rem}.form-label{font-size:.875rem;font-weight:var(--fw-bold);color:var(--color-text);align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.form-required{color:#fff;font-size:.65rem;font-weight:var(--fw-bold);letter-spacing:.04em;background:#e53e3e;border-radius:3px;padding:.15em .55em;display:inline-block}.form-optional{background:var(--color-beige-mid);color:var(--color-text-mid);font-size:.65rem;font-weight:var(--fw-bold);border-radius:3px;padding:.15em .55em;display:inline-block}.form-input,.form-select,.form-textarea{width:100%;font-family:var(--font-sans);color:var(--color-text);background:var(--color-off-white);border:1.5px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--trans), box-shadow var(--trans), background var(--trans);appearance:none;outline:none;padding:.75rem 1rem;font-size:.9375rem}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-accent);background:var(--color-white);box-shadow:0 0 0 3px #b07d4f26}.form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%236B5D52'%3E%3Cpath fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z' clip-rule='evenodd'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;background-size:1.25em;padding-right:2.5rem}.form-textarea{resize:vertical;min-height:150px}.form-radio-group,.form-check-group{flex-wrap:wrap;gap:.6rem;display:flex}.form-radio-label,.form-check-label{cursor:pointer;border:1.5px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-off-white);transition:border-color var(--trans), background var(--trans), color var(--trans);align-items:center;gap:.45rem;padding:.4em .9em;font-size:.875rem;display:flex}.form-radio-label:hover,.form-check-label:hover{border-color:var(--color-accent);background:var(--color-beige)}.form-radio-label input,.form-check-label input{display:none}:is(.form-radio-label:has(input:checked),.form-check-label:has(input:checked)){border-color:var(--color-accent);background:var(--color-accent);color:var(--color-white)}.form-counter{color:var(--color-text-lt);text-align:right;margin-top:.25rem;font-size:.75rem}.form-consent{background:var(--color-beige);border-radius:var(--radius-md);border:1.5px solid var(--color-beige-mid);cursor:pointer;align-items:flex-start;gap:.75rem;padding:1rem;display:flex}.form-consent input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-accent);cursor:pointer;flex-shrink:0;margin-top:2px}.form-consent__text{color:var(--color-text-mid);font-size:.8125rem;line-height:1.7}.form-consent__text a{color:var(--color-accent);text-decoration:underline}.form-submit{border-radius:var(--radius-full);background:var(--color-accent);width:100%;color:var(--color-white);font-size:1.0625rem;font-weight:var(--fw-bold);font-family:var(--font-sans);cursor:pointer;transition:background var(--trans), transform var(--trans), box-shadow var(--trans);border:none;justify-content:center;align-items:center;gap:.6rem;margin-top:1.5rem;padding:1rem;display:flex}.form-submit:hover{background:var(--color-brown-dk);box-shadow:var(--shadow-md);transform:translateY(-2px)}.form-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.contact-sidebar{flex-direction:column;gap:1rem;display:flex}.sidebar-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.5rem 1.25rem}.sidebar-card__head{font-size:.875rem;font-weight:var(--fw-bold);color:var(--color-text);align-items:center;gap:.6rem;margin-bottom:.85rem;display:flex}.sidebar-card__head i{color:var(--color-accent)}.sidebar-tel{font-family:var(--font-serif);font-size:1.5rem;font-weight:var(--fw-bold);color:var(--color-text);letter-spacing:.04em;margin-bottom:.25rem;display:block}.sidebar-hours{color:var(--color-text-lt);font-size:.8125rem}.sidebar-list{flex-direction:column;gap:.4rem;display:flex}.sidebar-list-item{color:var(--color-text-mid);align-items:center;gap:.5rem;font-size:.8125rem;display:flex}.sidebar-list-item i{color:var(--color-accent);font-size:.8rem}.popular-list{flex-direction:column;gap:.3rem;display:flex}.popular-item{color:var(--color-text-mid);border-bottom:1px solid var(--color-border);align-items:center;gap:.5rem;padding:.5rem 0;font-size:.8125rem;display:flex}.popular-item:last-child{border-bottom:none}.popular-rank{background:var(--color-beige-mid);width:22px;height:22px;font-size:.7rem;font-weight:var(--fw-bold);color:var(--color-brown-dk);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.popular-rank.rank-1{background:#f6d860}.popular-rank.rank-2{background:#d4d4d4}.popular-rank.rank-3{background:#e8a87c}@media (max-width:900px){.contact-layout{grid-template-columns:1fr}.merit-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.merit-grid{grid-template-columns:1fr 1fr}}
