/* Y's works production shared system */
:root{--ys-brand:#57BDAA;--ys-brand-deep:#2E6F63;--ys-brand-dark:#24594F;--ys-brand-pale:#EAF7F4;--ys-brand-muted:#9FD8CD;--ys-charcoal:#4C4948;--ys-text:#6C6C6C;--ys-text-soft:#7C7C7C;--ys-text-light:#8B8B8B;--ys-bg-warm:#E8E3D8;--ys-bg-cool:#DDDDE0;--ys-bg-soft:#F5F5F5;--ys-bg-ivory:#FAF8F3;--ys-white:#FFFFFF;--ys-border:#D7D3CC;--ys-shadow:rgba(76,73,72,.12);--ys-container:1180px;--ys-wide:1360px;--ys-text-width:42em;--ys-gutter:clamp(20px,4vw,48px);--ys-mincho:"Yu Mincho","YuMincho","Hiragino Mincho ProN","Hiragino Mincho Pro",serif;--ys-gothic:"Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo",sans-serif;--ys-header-height:78px}
html{scroll-behavior:smooth}body.ys-body{margin:0;color:var(--ys-text);background:var(--ys-bg-ivory);font-family:var(--ys-gothic);font-size:16px;line-height:1.9;overflow-x:clip}body.ys-nav-open{overflow:hidden}.ys,.ys *{box-sizing:border-box}.ys a{color:inherit;text-decoration:none}.ys img{display:block;max-width:100%;height:auto}.ys :focus-visible{outline:3px solid var(--ys-brand);outline-offset:4px}.ys-skip-link{position:fixed;left:16px;top:16px;z-index:10000;padding:10px 14px;color:#fff;background:var(--ys-brand-dark);transform:translateY(-160%)}.ys-skip-link:focus{transform:translateY(0)}.ys-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.ys-container{width:min(calc(100% - (var(--ys-gutter)*2)),var(--ys-container));margin-inline:auto}.ys-section{position:relative;padding:clamp(84px,10vw,144px) 0;overflow:clip}.ys-section-head{max-width:720px;margin-bottom:clamp(34px,6vw,72px)}.ys-section-head--center{margin-inline:auto;text-align:center}.ys-section-head--split{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(24px,6vw,88px);max-width:none;align-items:end}.ys-kicker{margin:0 0 14px;color:var(--ys-brand-deep);font-size:12px;font-weight:700;letter-spacing:.18em;line-height:1.4;text-transform:uppercase}.ys-kicker--light{color:rgba(255,255,255,.78)}.ys-section-title,.ys h1,.ys h2,.ys h3{color:var(--ys-charcoal);font-family:var(--ys-mincho);font-weight:600;letter-spacing:0}.ys-section-title{margin:0;font-size:clamp(30px,3.4vw,52px);line-height:1.34}.ys h3{font-size:clamp(22px,2.4vw,34px);line-height:1.42}.ys p{margin:0}.ys p+p{margin-top:1em}.ys-rich-text{max-width:var(--ys-text-width);font-size:clamp(15px,1.15vw,17px)}.ys-button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 22px;border:1px solid transparent;border-radius:999px;font-size:14px;font-weight:700;line-height:1.4;text-decoration:none;transition:background-color .25s ease,border-color .25s ease,color .25s ease,transform .25s ease}.ys-button:hover{transform:translateY(-1px)}.ys-button--primary{color:#fff;background:var(--ys-brand-deep);border-color:var(--ys-brand-deep)}.ys-button--primary:hover{background:var(--ys-brand-dark);border-color:var(--ys-brand-dark)}.ys-button--secondary{color:var(--ys-brand-dark);background:transparent;border-color:var(--ys-brand-muted)}.ys-button--secondary:hover{background:var(--ys-brand-pale)}.ys-button--light{color:var(--ys-brand-dark);background:#fff;border-color:#fff}.ys-button--ghost-light{color:#fff;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.55)}.ys-text-link{display:inline-flex;align-items:center;gap:10px;margin-top:24px;color:var(--ys-brand-dark);font-weight:700;text-decoration:none}.ys-text-link:after{content:"";width:42px;height:1px;background:currentColor;transition:width .25s ease}.ys-text-link:hover:after{width:60px}.ys-section-word{position:absolute;z-index:0;top:clamp(28px,5vw,70px);left:max(20px,calc((100vw - var(--ys-wide))/2));color:rgba(46,111,99,.075);font-family:var(--ys-gothic);font-size:clamp(52px,12vw,158px);font-weight:800;line-height:1;letter-spacing:.02em;pointer-events:none;white-space:nowrap}.ys-section-word--soft{color:rgba(76,73,72,.06)}.ys-section>.ys-container{position:relative;z-index:1}.ys-header{position:fixed;inset:0 0 auto;z-index:1000;color:var(--ys-charcoal);transition:background-color .25s ease,box-shadow .25s ease,color .25s ease}.ys-header__inner{width:min(calc(100% - 32px),var(--ys-wide));min-height:var(--ys-header-height);margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.ys-header--scrolled,.ys-header:has(.ys-nav[data-open="true"]){background:rgba(250,248,243,.94);box-shadow:0 10px 28px rgba(76,73,72,.08);backdrop-filter:blur(16px)}.ys-header__brand{display:inline-flex;flex-direction:column;text-decoration:none;line-height:1.1}.ys-header__name{color:var(--ys-charcoal);font-family:var(--ys-mincho);font-size:24px;font-weight:700}.ys-header__tagline{margin-top:5px;color:var(--ys-text-soft);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.ys-header__toggle{display:none;width:46px;height:46px;border:1px solid var(--ys-border);border-radius:50%;background:rgba(255,255,255,.82);padding:0}.ys-header__toggle-line{display:block;width:18px;height:1px;margin:5px auto;background:var(--ys-charcoal);transition:transform .2s ease,opacity .2s ease}.ys-nav{display:flex;align-items:center;gap:24px}.ys-nav__list{display:flex;align-items:center;gap:22px;padding:0;margin:0;list-style:none}.ys-nav__link{color:var(--ys-charcoal);font-size:13px;font-weight:700;text-decoration:none}.ys-nav__link:hover{color:var(--ys-brand-dark)}.ys-nav__contact{min-height:42px;display:inline-flex;align-items:center;padding:10px 18px;border-radius:999px;color:#fff;background:var(--ys-brand-deep);font-size:13px;font-weight:700;text-decoration:none}.ys-breadcrumb{display:flex;align-items:center;gap:10px;margin-bottom:28px;color:var(--ys-text-light);font-size:12px;letter-spacing:.08em}.ys-breadcrumb a{text-decoration:none}.ys-image{margin:0;overflow:hidden;background:var(--ys-bg-soft)}.ys-image img{width:100%;height:100%;object-fit:cover;object-position:var(--ys-object-position,50% 50%);transform:scale(var(--ys-image-scale,1))}.ys-line-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--ys-border)}.ys-line-list li{padding:16px 0;border-bottom:1px solid var(--ys-border)}.ys-definition-list{margin:28px 0 0;border-top:1px solid var(--ys-border)}.ys-definition-list div{display:grid;grid-template-columns:160px 1fr;gap:24px;padding:18px 0;border-bottom:1px solid var(--ys-border)}.ys-definition-list dt{color:var(--ys-charcoal);font-weight:700}.ys-definition-list dd{margin:0}.ys-faq-layout{display:grid;grid-template-columns:minmax(240px,.62fr) minmax(0,1fr);gap:clamp(34px,6vw,86px);align-items:start}.ys-faq-list{border-top:1px solid var(--ys-border)}.ys-faq-item{border-bottom:1px solid var(--ys-border)}.ys-faq-item summary{min-height:64px;display:grid;grid-template-columns:32px 1fr;gap:16px;align-items:center;cursor:pointer;color:var(--ys-charcoal);font-weight:700;list-style:none}.ys-faq-item summary::-webkit-details-marker{display:none}.ys-faq-item summary span{color:var(--ys-brand-deep);font-size:13px;letter-spacing:.1em}.ys-faq-item__answer{padding:0 0 22px 48px;color:var(--ys-text)}.ys-final-contact{position:relative;min-height:520px;display:grid;place-items:center;overflow:hidden;color:#fff;background:var(--ys-brand-dark)}.ys-final-contact__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:48% 44%;opacity:.38}.ys-final-contact__overlay{position:absolute;inset:0;background:linear-gradient(110deg,rgba(36,89,79,.94),rgba(46,111,99,.74))}.ys-final-contact__inner{position:relative;z-index:1;width:min(calc(100% - var(--ys-gutter)*2),820px);text-align:center}.ys-final-contact__title{margin:0;color:#fff;font-size:clamp(32px,4.4vw,60px);line-height:1.36}.ys-final-contact__text{max-width:44em;margin:24px auto 32px;color:rgba(255,255,255,.88)}.ys-footer{color:rgba(255,255,255,.82);background:var(--ys-charcoal)}.ys-footer__inner{width:min(calc(100% - var(--ys-gutter)*2),var(--ys-wide));margin-inline:auto;display:flex;justify-content:space-between;gap:30px;padding:48px 0}.ys-footer__name{color:#fff;font-family:var(--ys-mincho);font-size:24px;font-weight:700;text-decoration:none}.ys-footer__tagline{margin-top:8px;font-size:13px}.ys-footer__list{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:14px 24px;list-style:none;padding:0;margin:0}.ys-footer__link{font-size:13px;text-decoration:none}.ys-footer__bottom{border-top:1px solid rgba(255,255,255,.12);padding:18px var(--ys-gutter);text-align:center;font-size:12px}.ys-reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease var(--ys-reveal-delay,0ms),transform .7s ease var(--ys-reveal-delay,0ms)}.ys-reveal--visible{opacity:1;transform:translateY(0)}
@media(max-width:1024px){.ys-section-head--split,.ys-faq-layout{grid-template-columns:1fr}}
@media(max-width:767px){:root{--ys-header-height:60px}.ys-section{padding:72px 0}.ys-section-word{font-size:clamp(48px,18vw,92px);white-space:normal;line-height:.92}.ys-button{width:100%;max-width:320px}.ys-definition-list div{grid-template-columns:1fr;gap:4px}.ys-final-contact{min-height:480px}.ys-footer__inner{flex-direction:column}.ys-footer__list{justify-content:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ys *,.ys *:before,.ys *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.ys-reveal{opacity:1;transform:none}}


/* Layout stabilization production */
:root{--ys-z-bg:0;--ys-z-decoration:1;--ys-z-media:2;--ys-z-content:3;--ys-z-floating:4;--ys-z-header:30;--ys-z-sticky-cta:25;--ys-z-menu:30;--ys-z-overlay:40;--ys-z-drawer:50;--ys-z-drawer-close:51;--ys-overlap-sm:32px;--ys-overlap-md:64px;--ys-overlap-lg:88px;--ys-stage-space-sm:64px;--ys-stage-space-md:96px;--ys-stage-space-lg:128px;--ys-contact-overlap:72px}
.ys{overflow-x:clip}.ys-stage,.ys-section,.ys-top-hero,.ys-about-hero,.ys-marketing-hero,.ys-final-contact,.ys-footer{position:relative;isolation:isolate}.ys-section,.ys-top-hero,.ys-about-hero,.ys-marketing-hero{overflow:clip}.ys-stage__clip{position:absolute;inset:0;z-index:var(--ys-z-bg);overflow:clip;pointer-events:none}.ys-stage__background{position:absolute;inset:0}.ys-stage__inner{position:relative;z-index:var(--ys-z-content)}.ys-stage__media{position:relative;z-index:var(--ys-z-media)}.ys-stage__content{position:relative;z-index:var(--ys-z-content)}.ys-stage__floating{position:absolute;z-index:var(--ys-z-floating)}@supports not (overflow:clip){.ys-stage__clip,.ys-section,.ys-top-hero,.ys-about-hero,.ys-marketing-hero{overflow:hidden}}
.ys-header{z-index:var(--ys-z-header)}.ys-nav{z-index:var(--ys-z-menu)}.ys-header__toggle{z-index:calc(var(--ys-z-menu) + 1)}.ys-section>.ys-container,.ys-section-head,.ys-rich-text,.ys-line-list,.ys-faq-list{position:relative;z-index:var(--ys-z-content)}.ys-section-word,.ys-about-hero__word,.ys-about-philosophy__word,.ys-marketing-hero__word{z-index:var(--ys-z-decoration);pointer-events:none;user-select:none;max-width:calc(100vw - 32px);overflow:hidden;color:rgba(87,189,170,.10)}.ys-section-word--soft{color:rgba(76,73,72,.08)}.ys-about-philosophy__word{color:rgba(255,255,255,.10)}
.ys .ys-button--primary,.ys .ys-button--primary:link,.ys .ys-button--primary:visited,.ys-nav__contact,.ys-nav__contact:link,.ys-nav__contact:visited{color:#fff;background:#2E6F63;border-color:#2E6F63}.ys .ys-button--primary:hover,.ys .ys-button--primary:focus,.ys .ys-button--primary:focus-visible,.ys .ys-button--primary:active,.ys-nav__contact:hover,.ys-nav__contact:focus,.ys-nav__contact:focus-visible,.ys-nav__contact:active{color:#fff;background:#24594F;border-color:#24594F}.ys .ys-button--primary span,.ys .ys-button--primary svg,.ys .ys-button--primary:before,.ys .ys-button--primary:after{color:inherit;fill:currentColor;stroke:currentColor}.ys-button--secondary{color:#2E6F63;background:#fff;border-color:#2E6F63}.ys-button--secondary:hover{color:#24594F;background:#EAF7F4;border-color:#24594F}.ys-button--ghost-light{color:#fff;background:rgba(36,89,79,.28);border-color:rgba(255,255,255,.72)}
.ys-contact-stage{min-height:500px;margin:0;padding:96px 0 0;display:flex;align-items:flex-end;background:#24594F;overflow:visible}.ys-contact-stage__clip{position:absolute;inset:0;z-index:var(--ys-z-bg);overflow:clip;pointer-events:none}.ys-contact-stage__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 48%;opacity:.58;filter:saturate(.95) brightness(.78)}.ys-contact-stage__overlay{position:absolute;inset:0;background:linear-gradient(105deg,rgba(36,89,79,.9),rgba(46,111,99,.72) 52%,rgba(36,89,79,.82))}.ys-contact-stage__inner{position:relative;z-index:var(--ys-z-content);width:min(calc(100% - var(--ys-gutter)*2),var(--ys-container));margin-inline:auto;display:flex;justify-content:center}.ys-contact-stage__panel{width:min(100%,620px);margin-bottom:calc(var(--ys-contact-overlap) * -1);padding:clamp(28px,4.5vw,52px);background:#fff;color:#6C6C6C;border:1px solid rgba(255,255,255,.86);box-shadow:0 24px 60px rgba(36,89,79,.18)}.ys-contact-stage__title{margin:0;color:#4C4948;font-size:clamp(30px,4vw,54px);line-height:1.35}.ys-contact-stage__text{margin:22px 0 30px;color:#6C6C6C}.ys-contact-stage .ys-kicker{color:#2E6F63}.ys-about-contact .ys-contact-stage__image{object-position:43% 50%}.ys-marketing-contact .ys-contact-stage__panel{width:min(100%,760px)}.ys-marketing-contact .ys-contact-stage__image{object-position:58% 50%}
.ys-footer{z-index:var(--ys-z-content);background:#2E6F63;color:rgba(255,255,255,.88);overflow:visible}.ys-footer__main{position:relative;z-index:var(--ys-z-content);background:#2E6F63;padding-top:calc(var(--ys-contact-overlap) + 56px)}.ys-footer__inner{width:min(calc(100% - var(--ys-gutter)*2),var(--ys-wide));margin-inline:auto;display:flex;justify-content:space-between;gap:30px;padding:0 0 44px}.ys-footer__name{color:#fff;font-family:var(--ys-mincho);font-size:18px;font-weight:700;text-decoration:none}.ys-footer__tagline{margin-top:8px;color:rgba(255,255,255,.82);font-size:13px}.ys-footer__list{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px 24px;list-style:none;padding:0;margin:0}.ys-footer__link{min-height:44px;display:inline-flex;align-items:center;color:#fff;font-size:13px;line-height:1.7;text-decoration:none}.ys-footer__link:hover{color:#9FD8CD}.ys-footer__bottom{position:relative;z-index:var(--ys-z-content);border:0;background:#24594F;padding:18px var(--ys-gutter);text-align:center;color:rgba(255,255,255,.84);font-size:11px}.ys-footer__bottom small{font-size:11px}.ys-faq-item[open]{background:#EAF7F4}.ys-faq-item summary,.ys-faq-item__answer{position:relative;z-index:var(--ys-z-content)}
@media(max-width:1024px){:root{--ys-overlap-sm:24px;--ys-overlap-md:48px;--ys-overlap-lg:64px;--ys-contact-overlap:48px}.ys-contact-stage{min-height:460px;padding-top:80px}.ys-footer__main{padding-top:calc(var(--ys-contact-overlap) + 48px)}.ys-section-word,.ys-about-hero__word,.ys-about-philosophy__word,.ys-marketing-hero__word{font-size:clamp(48px,10vw,112px)}}
@media(max-width:767px){:root{--ys-overlap-sm:20px;--ys-overlap-md:28px;--ys-overlap-lg:32px;--ys-contact-overlap:28px}.ys-section{overflow:hidden}.ys-section-word,.ys-about-hero__word,.ys-about-philosophy__word,.ys-marketing-hero__word{font-size:clamp(48px,16vw,68px);line-height:.95}.ys-contact-stage{min-height:420px;padding:68px 0 0}.ys-contact-stage__inner,.ys-about-contact .ys-contact-stage__inner,.ys-marketing-contact .ys-contact-stage__inner{justify-content:center;width:calc(100% - 40px)}.ys-contact-stage__panel{width:100%;margin-bottom:calc(var(--ys-contact-overlap) * -1);padding:28px 22px}.ys-contact-stage .ys-button{width:100%;max-width:320px}.ys-footer__main{padding-top:calc(var(--ys-contact-overlap) + 48px)}.ys-footer__inner{display:block;padding-bottom:30px}.ys-footer__nav{margin-top:24px}.ys-footer__list{display:block}.ys-footer__link{width:100%;min-height:44px}.ys-footer__bottom{padding:16px 20px}}

/* Layout stabilization production refinements */
.ys-contact-stage{z-index:2}.ys-contact-stage__panel{position:relative;z-index:var(--ys-z-floating)}.ys-footer{z-index:1}.ys-footer__name{min-height:44px;display:inline-flex;align-items:center}.ys-footer a{position:relative;z-index:var(--ys-z-content)}

/* Image art direction production: contact crop positions */
@media(max-width:1024px){.ys-contact-stage__image{object-position:54% 50%}.ys-about-contact .ys-contact-stage__image{object-position:46% 50%}.ys-marketing-contact .ys-contact-stage__image{object-position:62% 50%}}
@media(max-width:767px){.ys-contact-stage__image{object-position:60% 50%}.ys-about-contact .ys-contact-stage__image{object-position:50% 50%}.ys-marketing-contact .ys-contact-stage__image{object-position:58% 50%}}


/* Mobile navigation and conditional CTA production */
.ys-mobile-nav,.ys-sticky-cta,.ys-noscript-nav{display:none}.ys-mobile-nav[hidden]{display:none}body.ys-nav-open{touch-action:none}
@media(max-width:1023px){:root{--ys-header-height:64px}html{scroll-padding-top:72px}.ys-header{z-index:var(--ys-z-header);border-bottom:1px solid transparent}.ys-header__inner{width:100%;min-height:64px;padding:0 18px;gap:12px}.ys-header__brand{min-width:0;max-width:calc(100vw - 88px)}.ys-header__name{font-size:16px;line-height:1.15}.ys-header__tagline{max-width:180px;margin-top:3px;overflow:hidden;color:var(--ys-text-soft);font-size:10px;letter-spacing:.1em;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.ys-nav{display:none}.ys-header--scrolled,.ys-header.is-drawer-open{background:rgba(250,248,243,.94);border-bottom-color:rgba(215,211,204,.64);box-shadow:0 10px 26px rgba(76,73,72,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.ys-header__toggle{position:relative;z-index:calc(var(--ys-z-header) + 1);display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;padding:0;border:1px solid rgba(76,73,72,.22);border-radius:50%;background:rgba(255,255,255,.78);color:var(--ys-charcoal)}.ys-header__toggle-line{position:absolute;left:50%;top:50%;display:block;width:20px;height:2px;margin:0;background:currentColor;border-radius:999px;transition:transform .24s ease,opacity .2s ease}.ys-header__toggle-line:nth-child(1){transform:translate(-50%,-8px)}.ys-header__toggle-line:nth-child(2){transform:translate(-50%,-1px)}.ys-header__toggle-line:nth-child(3){transform:translate(-50%,6px)}.ys-header__toggle[aria-expanded="true"] .ys-header__toggle-line:nth-child(1){transform:translate(-50%,-1px) rotate(42deg)}.ys-header__toggle[aria-expanded="true"] .ys-header__toggle-line:nth-child(2){opacity:0}.ys-header__toggle[aria-expanded="true"] .ys-header__toggle-line:nth-child(3){transform:translate(-50%,-1px) rotate(-42deg)}.ys-mobile-nav{position:fixed;inset:0;z-index:var(--ys-z-overlay);display:block;pointer-events:none}.ys-mobile-nav[data-open="true"]{pointer-events:auto}.ys-mobile-nav__overlay{position:absolute;inset:0;z-index:var(--ys-z-overlay);background:rgba(20,45,40,.48);opacity:0;transition:opacity .32s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.ys-mobile-nav[data-open="true"] .ys-mobile-nav__overlay{opacity:1}.ys-mobile-nav__drawer{position:absolute;top:0;right:0;z-index:var(--ys-z-drawer);width:88vw;max-width:390px;height:100vh;height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr);background:#FAF8F3;box-shadow:-24px 0 48px rgba(36,89,79,.18);transform:translateX(100%);transition:transform .36s cubic-bezier(.22,1,.36,1);pointer-events:auto;overflow:hidden}.ys-mobile-nav[data-open="true"] .ys-mobile-nav__drawer{transform:translateX(0)}.ys-mobile-nav__header{position:sticky;top:0;z-index:var(--ys-z-drawer-close);min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;border-bottom:1px solid rgba(215,211,204,.78);background:rgba(250,248,243,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.ys-mobile-nav__title{margin:0;color:var(--ys-brand-dark);font-size:12px;font-weight:900;letter-spacing:.22em;line-height:1;text-transform:uppercase}.ys-mobile-nav__close{position:relative;flex:0 0 48px;width:48px;height:48px;border:1px solid rgba(76,73,72,.22);border-radius:50%;background:#fff;color:var(--ys-charcoal)}.ys-mobile-nav__close-line{position:absolute;left:50%;top:50%;width:20px;height:2px;background:currentColor;border-radius:999px}.ys-mobile-nav__close-line:nth-child(1){transform:translate(-50%,-50%) rotate(42deg)}.ys-mobile-nav__close-line:nth-child(2){transform:translate(-50%,-50%) rotate(-42deg)}.ys-mobile-nav__scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:10px 22px calc(30px + env(safe-area-inset-bottom))}.ys-mobile-nav__list{list-style:none;margin:0;padding:0;border-top:1px solid rgba(215,211,204,.78)}.ys-mobile-nav__item{border-bottom:1px solid rgba(215,211,204,.78)}.ys-mobile-nav__link{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 0;color:var(--ys-charcoal);font-size:16px;font-weight:700;line-height:1.55;text-decoration:none}.ys-mobile-nav__link:hover,.ys-mobile-nav__link:focus,.ys-mobile-nav__link[aria-current="page"]{color:var(--ys-brand-dark)}.ys-mobile-nav__link[aria-current="page"] span:first-child{font-weight:900}.ys-mobile-nav__arrow{flex:0 0 auto;color:var(--ys-brand-deep);font-size:14px}.ys-mobile-nav__cta{padding:24px 0 10px}.ys-mobile-nav__cta-link{min-height:56px;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;border:1px solid #2E6F63;border-radius:999px;background:#2E6F63;color:#fff;font-size:16px;font-weight:800;line-height:1.4;text-decoration:none;box-shadow:0 10px 28px rgba(30,77,67,.18)}.ys-mobile-nav__cta-link:link,.ys-mobile-nav__cta-link:visited,.ys-mobile-nav__cta-link:hover,.ys-mobile-nav__cta-link:focus,.ys-mobile-nav__cta-link:active{color:#fff}.ys-mobile-nav__banners{display:grid;gap:12px;padding-top:18px}.ys-mobile-nav__banner{display:grid;gap:8px;padding:14px;border:1px solid var(--ys-border);background:#fff;color:var(--ys-charcoal);text-decoration:none}.ys-mobile-nav__banner-image{width:100%;aspect-ratio:16/9;object-fit:cover}.ys-mobile-nav__banner-title{font-size:14px;font-weight:800}.ys-noscript-nav{display:grid;gap:0;padding:76px 20px 18px;background:#FAF8F3}.ys-noscript-nav a{min-height:48px;display:flex;align-items:center;border-bottom:1px solid var(--ys-border);color:var(--ys-charcoal);font-weight:700;text-decoration:none}}
@media(max-width:767px){html{scroll-padding-bottom:88px}.ys-header__inner{min-height:64px;padding-inline:16px}.ys-header--scrolled .ys-header__inner{min-height:60px}.ys-header__tagline{max-width:148px}.ys-sticky-cta{position:fixed;left:16px;right:16px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:var(--ys-z-sticky-cta);display:flex;align-items:center;justify-content:center;gap:10px;max-width:480px;min-height:56px;margin-inline:auto;padding:13px 22px;border:1px solid #2E6F63;border-radius:999px;background:#2E6F63;color:#fff;font-size:15px;font-weight:800;line-height:1.35;text-decoration:none;box-shadow:0 10px 28px rgba(30,77,67,.22);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(calc(100% + 28px));transition:opacity .3s ease,visibility .3s ease,transform .3s ease}.ys-sticky-cta:link,.ys-sticky-cta:visited,.ys-sticky-cta:hover,.ys-sticky-cta:focus,.ys-sticky-cta:active{color:#fff}.ys-sticky-cta.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}body.ys-nav-open .ys-sticky-cta{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(calc(100% + 28px))}.ys-sticky-cta__arrow{font-size:13px}.ys-mobile-nav__scroll{padding-inline:20px}.ys-mobile-nav__link{font-size:15.5px}}
@media(max-width:374px){.ys-header__inner{padding-inline:14px}.ys-header__tagline{max-width:132px}.ys-sticky-cta{left:16px;right:16px}.ys-mobile-nav__drawer{width:88vw}.ys-mobile-nav__scroll{padding-inline:18px}}
@media(max-width:480px){body.ys-body{font-size:15.5px}}
@media(max-width:767px) and (max-height:520px){.ys-sticky-cta{display:none}}
@media(prefers-reduced-motion:reduce){.ys-mobile-nav__overlay,.ys-mobile-nav__drawer,.ys-sticky-cta{transition-duration:.01ms}.ys-sticky-cta{transform:none}}
.ys .ys-section-title,.ys h1,.ys h2,.ys h3{word-break:normal;line-break:strict;overflow-wrap:normal;text-wrap:balance}
.ys-heading-line{display:block}.ys-nowrap{white-space:nowrap}


/* Shared FAQ heading line-break pass */
.ys .ys-faq-layout__head .ys-section-title .ys-heading-line{white-space:nowrap}
@media(max-width:374px){.ys .ys-faq-layout__head .ys-section-title{font-size:28px}}


/* Interactive affordance production */
.ys .ys-button {
	position: relative;
	isolation: isolate;
	min-height: 50px;
	padding: 13px 24px 13px 26px;
	border-style: solid;
	border-width: 1px;
	font-weight: 800;
	letter-spacing: .01em;
	cursor: pointer;
	box-shadow: 0 7px 18px rgba(36, 89, 79, .14), inset 0 1px rgba(255, 255, 255, .2);
	transition: color .24s ease, background-color .24s ease, border-color .24s ease, box-shadow .24s ease, transform .24s ease
}

.ys .ys-button::after {
	content: "\2192";
	display: inline-block;
	flex: 0 0 auto;
	margin-left: 2px;
	font-size: 14px;
	font-weight: 400;
	line-height: 1;
	transition: transform .24s ease
}

.ys .ys-button[href^="#"]::after {
	content: "\2193"
}

.ys .ys-button--primary {
	box-shadow: 0 9px 22px rgba(36, 89, 79, .22), inset 0 1px rgba(255, 255, 255, .2)
}

.ys .ys-button--secondary {
	border-width: 1.5px;
	box-shadow: 0 5px 14px rgba(36, 89, 79, .1)
}

.ys .ys-button--ghost-light,
.ys .ys-button--light {
	box-shadow: 0 8px 20px rgba(24, 67, 59, .17), inset 0 1px rgba(255, 255, 255, .45)
}

.ys .ys-button:active {
	transform: translateY(0);
	box-shadow: 0 3px 9px rgba(36, 89, 79, .14);
	transition-duration: .08s
}

.ys .ys-button:focus-visible {
	outline: 3px solid rgba(87, 189, 170, .5);
	outline-offset: 4px
}

.ys .ys-button[aria-disabled="true"],
.ys .ys-button:disabled {
	opacity: .52;
	cursor: not-allowed;
	box-shadow: none;
	transform: none
}

.ys .ys-text-link {
	min-height: 44px;
	padding: 9px 16px;
	border: 1px solid rgba(46, 111, 99, .46);
	border-radius: 999px;
	background: rgba(255, 255, 255, .76);
	box-shadow: 0 4px 12px rgba(36, 89, 79, .08);
	font-size: 14px;
	line-height: 1.4;
	transition: color .24s ease, background-color .24s ease, border-color .24s ease, box-shadow .24s ease, transform .24s ease
}

.ys .ys-text-link::after {
	content: "\2192";
	width: auto;
	height: auto;
	background: none;
	font-size: 14px;
	font-weight: 400;
	line-height: 1;
	transition: transform .24s ease
}

.ys .ys-text-link:focus-visible {
	outline: 3px solid rgba(87, 189, 170, .42);
	outline-offset: 3px
}

.ys-nav__contact {
	position: relative;
	gap: 8px;
	padding-inline: 20px;
	border: 1px solid #2E6F63;
	box-shadow: 0 7px 18px rgba(36, 89, 79, .19);
	transition: background-color .24s ease, border-color .24s ease, box-shadow .24s ease, transform .24s ease
}

.ys-nav__contact::after {
	content: "\2192";
	font-size: 12px;
	font-weight: 400;
	line-height: 1;
	transition: transform .24s ease
}

.ys .ys-faq-item summary {
	grid-template-columns: 32px minmax(0, 1fr) 32px;
	padding: 0 10px 0 14px;
	transition: color .2s ease, background-color .2s ease
}

.ys .ys-faq-item summary::after {
	content: "+";
	width: 28px;
	height: 28px;
	display: grid;
	place-items: center;
	border: 1px solid rgba(46, 111, 99, .42);
	border-radius: 50%;
	color: var(--ys-brand-deep);
	background: #fff;
	font-family: var(--ys-gothic);
	font-size: 18px;
	font-weight: 500;
	line-height: 1;
	transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease
}

.ys .ys-faq-item[open] summary::after {
	content: "\2212";
	color: #fff;
	background: var(--ys-brand-deep);
	border-color: var(--ys-brand-deep)
}

@media (hover: hover) and (pointer: fine) {
	.ys .ys-button:hover {
		transform: translateY(-3px);
		box-shadow: 0 13px 28px rgba(36, 89, 79, .24), inset 0 1px rgba(255, 255, 255, .22)
	}

	.ys .ys-button:hover::after {
		transform: translateX(3px)
	}

	.ys .ys-button[href^="#"]:hover::after {
		transform: translateY(3px)
	}

	.ys .ys-text-link:hover {
		color: var(--ys-brand-dark);
		background: var(--ys-brand-pale);
		border-color: var(--ys-brand-deep);
		box-shadow: 0 8px 18px rgba(36, 89, 79, .13);
		transform: translateY(-2px)
	}

	.ys .ys-text-link:hover::after,
	.ys-nav__contact:hover::after {
		transform: translateX(3px)
	}

	.ys-nav__contact:hover {
		transform: translateY(-2px);
		box-shadow: 0 11px 24px rgba(36, 89, 79, .24)
	}

	.ys .ys-faq-item summary:hover {
		color: var(--ys-brand-dark);
		background: rgba(234, 247, 244, .55)
	}

	.ys .ys-faq-item summary:hover::after {
		transform: scale(1.08)
	}
}

@media(max-width:767px) {
	.ys .ys-button {
		min-height: 52px;
		padding-inline: 22px
	}

	.ys .ys-text-link {
		min-height: 46px;
		padding: 10px 16px
	}
}

@media(prefers-reduced-motion:reduce) {
	.ys .ys-button,
	.ys .ys-button::after,
	.ys .ys-text-link,
	.ys .ys-text-link::after,
	.ys-nav__contact,
	.ys-nav__contact::after,
	.ys .ys-faq-item summary,
	.ys .ys-faq-item summary::after {
		transition-duration: .01ms
	}
}

/* Shared FAQ open and close motion */
.ys-js .ys-faq-item.is-animating {
	overflow: hidden;
	will-change: height
}

.ys-js .ys-faq-item.is-expanding .ys-faq-item__answer {
	animation: ys-faq-answer-in 320ms cubic-bezier(.22, .61, .36, 1) both
}

.ys-js .ys-faq-item.is-closing .ys-faq-item__answer {
	animation: ys-faq-answer-out 220ms ease both
}

@keyframes ys-faq-answer-in {
	from {
		opacity: 0;
		transform: translateY(-7px)
	}

	to {
		opacity: 1;
		transform: translateY(0)
	}
}

@keyframes ys-faq-answer-out {
	from {
		opacity: 1;
		transform: translateY(0)
	}

	to {
		opacity: 0;
		transform: translateY(-5px)
	}
}

@media(prefers-reduced-motion:reduce) {
	.ys-js .ys-faq-item__answer {
		animation: none !important
	}
}


/* Shared final contact choices */
.ys-contact-stage__actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
	align-items: end
}

.ys-contact-stage__choice {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 9px;
	min-width: 0
}

.ys-contact-stage__choice > span {
	color: var(--ys-brand-deep);
	font-size: 12px;
	font-weight: 800;
	line-height: 1.5
}

.ys-contact-stage__choice .ys-button {
	width: 100%;
	min-height: 52px;
	padding-inline: 16px;
	text-align: center
}

.ys .ys-button.ys-contact-stage__line {
	color: #fff;
	background: #06C755;
	border-color: #06C755;
	box-shadow: 0 9px 22px rgba(6, 199, 85, .23), inset 0 1px rgba(255, 255, 255, .24)
}

@media (hover: hover) and (pointer: fine) {
	.ys .ys-button.ys-contact-stage__line:hover {
		color: #fff;
		background: #05A847;
		border-color: #05A847
	}
}

.ys .ys-button.ys-contact-stage__line:focus-visible {
	color: #fff;
	background: #05A847;
	border-color: #05A847
}

@media(max-width:767px) {
	.ys-contact-stage__actions {
		grid-template-columns: minmax(0, 320px);
		gap: 18px
	}

	.ys-contact-stage__choice {
		align-items: stretch
	}
}


/* Mobile drawer and sticky dual actions */
.ys-sticky-cta-group {
	display: none
}

@media(max-width:1023px) {
	.ys-mobile-nav__cta {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		gap: 8px;
		padding: 20px 0 10px
	}

	.ys-mobile-nav__cta-link {
		min-width: 0;
		min-height: 48px;
		gap: 5px;
		padding: 10px 7px;
		border-radius: 8px;
		font-size: 12px;
		line-height: 1.35;
		box-shadow: 0 7px 18px rgba(30, 77, 67, .14)
	}

	.ys-mobile-nav__cta-link--line,
	.ys-mobile-nav__cta-link--line:link,
	.ys-mobile-nav__cta-link--line:visited,
	.ys-mobile-nav__cta-link--line:hover,
	.ys-mobile-nav__cta-link--line:focus,
	.ys-mobile-nav__cta-link--line:active {
		color: #fff;
		background: #06C755;
		border-color: #06C755
	}
}

@media(max-width:767px) {
	.ys-sticky-cta-group {
		position: fixed;
		left: 12px;
		right: 12px;
		bottom: calc(8px + env(safe-area-inset-bottom));
		z-index: var(--ys-z-sticky-cta);
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
		max-width: 480px;
		margin-inline: auto;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transform: translateY(calc(100% + 24px));
		transition: opacity .3s ease, visibility .3s ease, transform .3s ease
	}

	.ys-sticky-cta-group.is-visible {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transform: translateY(0)
	}

	body.ys-nav-open .ys-sticky-cta-group {
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transform: translateY(calc(100% + 24px))
	}

	.ys-sticky-cta__link {
		min-width: 0;
		min-height: 46px;
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 5px;
		padding: 9px 7px;
		border: 1px solid #2E6F63;
		border-radius: 7px;
		background: #2E6F63;
		color: #fff;
		font-size: 12px;
		font-weight: 800;
		line-height: 1.3;
		text-align: center;
		text-decoration: none;
		box-shadow: 0 7px 18px rgba(30, 77, 67, .18)
	}

	.ys-sticky-cta__link:link,
	.ys-sticky-cta__link:visited,
	.ys-sticky-cta__link:hover,
	.ys-sticky-cta__link:focus,
	.ys-sticky-cta__link:active {
		color: #fff
	}

	.ys-sticky-cta__link--line,
	.ys-sticky-cta__link--line:link,
	.ys-sticky-cta__link--line:visited,
	.ys-sticky-cta__link--line:hover,
	.ys-sticky-cta__link--line:focus,
	.ys-sticky-cta__link--line:active {
		background: #06C755;
		border-color: #06C755
	}
}

@media(max-width:374px) {
	.ys-mobile-nav__cta-link,
	.ys-sticky-cta__link {
		font-size: 11px
	}
}

@media(max-width:767px) and (max-height:520px) {
	.ys-sticky-cta-group {
		display: none
	}
}

@media(prefers-reduced-motion:reduce) {
	.ys-sticky-cta-group {
		transition-duration: .01ms;
		transform: none
	}
}
