:root{--color-ink:#28382f;--color-ink-soft:#5e6b63;--color-paper:#fbf8ef;--color-white:#fffef9;--color-sand:#f0dfb9;--color-sand-light:#f6edd8;--color-olive:#16aa78;--color-olive-deep:#018963;--color-clay:#ed7d2d;--color-yellow:#f2d653;--color-line:#28382f26;--shadow-soft:0 22px 54px #27483624;--font-serif:"Hiragino Maru Gothic ProN", "Yu Gothic", "Meiryo", sans-serif;--font-sans:"Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", sans-serif;--container:min(1180px, calc(100% - 48px));--header-height:92px}*{box-sizing:border-box}.site-html{scroll-behavior:smooth;scroll-padding-top:var(--header-height)}.site-body{color:var(--color-ink);background-color:var(--color-paper);font-family:var(--font-sans);letter-spacing:.04em;-webkit-font-smoothing:antialiased;background-image:radial-gradient(#28382f0b .65px,#0000 .65px);background-size:5px 5px;margin:0;font-size:16px;line-height:1.8;overflow-x:hidden}.site-body.is-menu-open{overflow:hidden}.container{width:var(--container);margin-inline:auto}.section{padding-block:clamp(88px,10vw,150px)}.section-heading{font-family:var(--font-serif);letter-spacing:.06em;white-space:nowrap;margin:0;font-size:clamp(1.75rem,4vw,3.35rem);font-weight:700;line-height:1.3}.section-heading--light{color:var(--color-white)}.section-kicker{color:var(--color-olive-deep);letter-spacing:.28em;text-transform:uppercase;align-items:center;gap:12px;margin:0 0 18px;font-size:.74rem;font-weight:700;display:flex}.section-kicker--light{color:#ffffffb8}.section-kicker:before{content:"";background:currentColor;width:30px;height:1px}.button{min-height:58px;color:var(--color-white);background:var(--color-olive-deep);border:1px solid #0000;border-radius:999px 999px 999px 26px;justify-content:center;align-items:center;gap:12px;padding:14px 26px;font-size:.92rem;font-weight:700;line-height:1.4;text-decoration:none;transition:transform .22s,background-color .22s,color .22s;display:inline-flex}.button:hover{background:var(--color-olive);transform:translateY(-2px)}.button--outline{border-color:var(--color-olive-deep);color:var(--color-olive-deep);background:0 0}.button--outline:hover{color:var(--color-white);background:var(--color-olive-deep)}.button__icon{flex:none;width:20px;height:20px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}[data-reveal]{opacity:0;transform:translateY(28px)}@media (prefers-reduced-motion:reduce){.site-html{scroll-behavior:auto}[data-reveal]{opacity:1;transform:none}.button{transition:none}}@media (width<=767px){:root{--container:min(100% - 32px, 640px);--header-height:72px}.site-body{font-size:15px}.section{padding-block:82px}.section-heading{letter-spacing:.03em;font-size:clamp(1.65rem,8vw,2.2rem)}.button{min-height:54px;padding-inline:20px}}@layer astro.images{:where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down}[data-astro-image-pos=top]{object-position:top}[data-astro-image-pos=bottom]{object-position:bottom}[data-astro-image-pos=left]{object-position:left}[data-astro-image-pos=right]{object-position:right}[data-astro-image-pos=center]{object-position:center}[data-astro-image-pos=top-bottom]{object-position:top bottom}[data-astro-image-pos=top-left]{object-position:top left}[data-astro-image-pos=top-right]{object-position:top right}[data-astro-image-pos=top-center]{object-position:top center}[data-astro-image-pos=bottom-top]{object-position:bottom top}[data-astro-image-pos=bottom-left]{object-position:bottom left}[data-astro-image-pos=bottom-right]{object-position:bottom right}[data-astro-image-pos=bottom-center]{object-position:bottom center}[data-astro-image-pos=left-top]{object-position:left top}[data-astro-image-pos=left-bottom]{object-position:left bottom}[data-astro-image-pos=left-right]{object-position:left right}[data-astro-image-pos=left-center]{object-position:left center}[data-astro-image-pos=right-top]{object-position:right top}[data-astro-image-pos=right-bottom]{object-position:right bottom}[data-astro-image-pos=right-left]{object-position:right left}[data-astro-image-pos=right-center]{object-position:right center}[data-astro-image-pos=center-top]{object-position:center top}[data-astro-image-pos=center-bottom]{object-position:center bottom}[data-astro-image-pos=center-left]{object-position:center left}[data-astro-image-pos=center-right]{object-position:center right}}.main-content{overflow:clip}.header{z-index:100;height:var(--header-height);backdrop-filter:blur(18px);background:#fbf8efe6;border-bottom:1px solid #0000;transition:height .25s,border-color .25s,background-color .25s;position:fixed;top:0;left:0;right:0}.header.is-scrolled{border-color:var(--color-line);background:#fbf8eff7}.header__inner{align-items:center;gap:clamp(24px,3vw,52px);width:min(1380px,100% - 48px);height:100%;margin-inline:auto;display:flex}.header__logo-link{flex:none;align-items:center;width:clamp(180px,17vw,240px);display:flex}.header__logo{width:100%;height:auto;display:block}.header__nav{align-items:center;gap:clamp(18px,2vw,34px);margin-left:auto;display:flex}.header__nav-link{color:var(--color-ink);letter-spacing:.12em;font-size:.75rem;font-weight:700;text-decoration:none;position:relative}.header__nav-link:after{background:var(--color-olive-deep);content:"";transform-origin:100%;height:1px;transition:transform .22s;position:absolute;bottom:-7px;left:0;right:0;transform:scaleX(0)}.header__nav-link:hover:after{transform-origin:0;transform:scaleX(1)}.header__phone{color:var(--color-white);background:var(--color-olive-deep);border-radius:999px 999px 999px 18px;flex:none;align-items:center;gap:10px;padding:11px 20px;text-decoration:none;display:flex}.header__phone-icon{width:19px}.header__phone-copy{flex-direction:column;line-height:1.2;display:flex}.header__phone-note{letter-spacing:.08em;font-size:.61rem}.header__phone-number{letter-spacing:.04em;margin-top:2px;font-family:Georgia,serif;font-size:1rem}.menu-button{background:var(--color-olive-deep);cursor:pointer;border:0;border-radius:50% 50% 50% 16px;flex:none;width:46px;height:46px;padding:0;display:none}.menu-button__line{background:var(--color-white);width:19px;height:1px;margin:5px auto;transition:transform .25s,opacity .25s;display:block}.menu-button.is-active .menu-button__line:first-child{transform:translateY(6px)rotate(45deg)}.menu-button.is-active .menu-button__line:nth-child(2){opacity:0}.menu-button.is-active .menu-button__line:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.mobile-menu{z-index:5;height:calc(100dvh - var(--header-height));visibility:hidden;opacity:0;background:var(--color-paper);flex-direction:column;justify-content:space-between;padding:42px max(24px,50vw - 320px) 34px;transition:opacity .28s,transform .28s,visibility .28s;display:flex;position:absolute;top:100%;left:0;right:0;transform:translateY(-16px)}.mobile-menu.is-open{visibility:visible;opacity:1;transform:translateY(0)}.mobile-menu__nav{flex-direction:column;display:flex}.mobile-menu__link{border-bottom:1px solid var(--color-line);color:var(--color-ink);align-items:center;gap:20px;padding:16px 0;text-decoration:none;display:flex}.mobile-menu__index{color:var(--color-clay);font-family:Georgia,serif;font-size:.72rem}.mobile-menu__label{font-family:var(--font-serif);font-size:1.28rem}.mobile-menu__contact{padding-top:26px}.mobile-menu__note{color:var(--color-ink-soft);margin:0 0 2px;font-size:.75rem}.mobile-menu__phone{color:var(--color-ink);margin-bottom:18px;font-family:Georgia,serif;font-size:1.8rem;line-height:1.3;text-decoration:none;display:block}.mobile-menu__line-link{width:100%}.hero{min-height:calc(100svh - var(--header-height));margin-top:var(--header-height);background-color:var(--color-paper);background-image:radial-gradient(#0189630f .75px,#0000 .75px);background-size:5px 5px;padding:clamp(44px,5vw,72px) 0 clamp(58px,7vw,94px);position:relative;overflow:hidden}.hero__grain{pointer-events:none;opacity:.7;background:linear-gradient(136deg,#0000 0 54%,#f2d65338 54% 72%,#0000 72%);position:absolute;inset:0}.hero__inner{grid-template-columns:minmax(0,.78fr) minmax(470px,1.22fr);align-items:center;gap:clamp(36px,5vw,74px);min-height:clamp(540px,68vh,650px);display:grid;position:relative}.hero__copy{z-index:2;padding-bottom:6px;position:relative}.hero__eyebrow{color:var(--color-olive-deep);letter-spacing:.18em;margin:0 0 20px;font-size:.66rem;font-weight:700}.hero__title{font-family:var(--font-serif);letter-spacing:.045em;margin:0;font-size:clamp(2.4rem,4.15vw,3.9rem);font-weight:700;line-height:1.38}.hero__title-line{white-space:nowrap;display:block}.hero__title-line--indent{width:fit-content;color:var(--color-white);background:var(--color-olive-deep);margin-top:6px;margin-left:clamp(12px,2.2vw,34px);padding:.01em .18em .06em .22em;transform:rotate(-.8deg);box-shadow:7px 7px #f2d653e6}.hero__lead{color:var(--color-ink-soft);font-family:var(--font-sans);margin:25px 0 0;font-size:clamp(.88rem,1.05vw,.98rem);line-height:1.95}.hero__actions{flex-wrap:wrap;gap:12px;margin-top:25px;display:flex}.hero__phone-button{padding-block:10px}.hero__phone-text{flex-direction:column;align-items:flex-start;line-height:1.15;display:flex}.hero__phone-label{font-size:.65rem;font-weight:500}.hero__phone-number{letter-spacing:.05em;margin-top:3px;font-family:Georgia,serif;font-size:1rem}.hero__visual{align-self:stretch;position:relative}.hero__visual:before{z-index:0;aspect-ratio:1;background:var(--color-yellow);content:"";border-radius:49% 51% 44% 56%/56% 43% 57% 44%;width:clamp(150px,16vw,240px);position:absolute;top:-18px;right:-44px;transform:rotate(12deg)}.hero__arch{box-shadow:var(--shadow-soft);clip-path:polygon(14% 0,100% 3%,100% 90%,87% 100%,3% 96%,0 20%);border:8px solid #fffef9eb;border-radius:0;position:absolute;inset:0 min(0px,590px - 50vw) 0 0;overflow:hidden}.hero__image{object-fit:cover;object-position:57% center;width:100%;height:108%}.hero__line-art{fill:none;width:150px;stroke:var(--color-clay);stroke-width:1.2px;opacity:.65;position:absolute;bottom:-48px;right:-72px}.hero__scroll{z-index:2;color:var(--color-ink-soft);align-items:center;gap:12px;text-decoration:none;display:flex;position:absolute;bottom:20px;left:max(24px,50vw - 690px)}.hero__scroll-label{letter-spacing:.14em;text-transform:uppercase;font-family:Georgia,serif;font-size:.66rem}.hero__scroll-line{background:currentColor;width:46px;height:1px}.promise{background-color:var(--color-white);background-image:linear-gradient(90deg,#0000 49.8%,#01896309 50%,#0000 50.2%);position:relative}.promise:before{background:var(--color-line);content:"";width:1px;height:90px;position:absolute;top:0;right:7%}.promise__inner{grid-template-columns:minmax(390px,.87fr) minmax(0,1.13fr);align-items:center;gap:clamp(65px,9vw,140px);display:grid}.promise__visual{background:var(--color-yellow);border-radius:8px 100px 8px 80px;min-height:650px;position:relative;transform:rotate(-1deg)}.promise__portrait{position:absolute;overflow:hidden}.promise__portrait--memorial{z-index:1;border:9px solid var(--color-white);box-shadow:var(--shadow-soft);bottom:8%;left:7%;right:7%;transform:rotate(2deg)}.promise__portrait--association{z-index:2;border:8px solid var(--color-white);width:56%;box-shadow:var(--shadow-soft);bottom:-3%;right:-7%;transform:rotate(-5deg)}.promise__image{width:100%;height:auto;display:block}.promise__visual-note{z-index:3;color:var(--color-white);background:var(--color-olive-deep);font-family:var(--font-sans);backdrop-filter:blur(8px);border:0;border-radius:3px 16px;margin:0;padding:14px 20px;font-size:.83rem;font-weight:700;line-height:1.7;position:absolute;top:80px;left:-25px;transform:rotate(-2deg)}.promise__lead{max-width:620px;color:var(--color-ink-soft);margin:32px 0 0;line-height:2.1}.promise__points{gap:0;margin-top:40px;display:grid}.promise__point{border-top:1px solid var(--color-line);grid-template-columns:58px 1fr;align-items:center;gap:18px;padding:20px 0;display:grid}.promise__point:last-child{border-bottom:1px solid var(--color-line)}.promise__point-icon-wrap{width:52px;height:52px;color:var(--color-olive-deep);background:var(--color-sand-light);border-radius:50%;place-items:center;display:grid}.promise__point-icon{width:22px}.promise__point-title,.promise__point-text{margin:0}.promise__point-title{font-family:var(--font-serif);font-size:1.1rem;font-weight:600}.promise__point-text{color:var(--color-ink-soft);margin-top:3px;font-size:.82rem;line-height:1.7}.nature-divider{z-index:2;background:var(--color-white);height:clamp(96px,12vw,172px);margin-top:-2px;margin-bottom:-2px;position:relative;overflow:hidden}.nature-divider:before,.nature-divider:after{z-index:1;content:"";background:#01a570;position:absolute;bottom:-10px}.nature-divider:before{border-radius:52% 48% 0 0/82% 68% 0 0;width:76%;height:76%;left:-10%;transform:rotate(-1.2deg)}.nature-divider:after{border-radius:48% 52% 0 0/70% 86% 0 0;width:64%;height:64%;right:-10%;transform:rotate(1deg)}.nature-divider__image{z-index:0;object-fit:fill;opacity:.16;width:100%;height:100%;display:block;position:absolute;inset:0}.nature-divider--flip{background:var(--color-white)}.nature-divider--flip .nature-divider__image{transform:scaleX(-1)}.soft-divider{--divider-top:var(--color-paper);--divider-bottom:var(--color-white);z-index:2;background:var(--divider-top);height:clamp(70px,8vw,116px);margin-block:-2px;position:relative;overflow:hidden}.soft-divider--green-cream{--divider-top:#01a570;--divider-bottom:#fff8db}.soft-divider--cream-paper{--divider-top:#fff8db;--divider-bottom:var(--color-paper)}.soft-divider--paper-white-reverse .soft-divider__hill--large{left:auto;right:-8%;transform:rotate(2deg)}.soft-divider--paper-white-reverse .soft-divider__hill--small{left:-5%;right:auto}.soft-divider__hill{background:var(--divider-bottom);display:block;position:absolute}.soft-divider__hill--large{border-radius:52% 48% 0 0/82% 72% 0 0;width:84%;height:158%;bottom:-72%;left:-8%;transform:rotate(-2deg)}.soft-divider__hill--small{border-radius:46% 54% 0 0/68% 82% 0 0;width:62%;height:136%;bottom:-58%;right:-5%;transform:none}.features{color:var(--color-white);background-color:#01a570;background-image:radial-gradient(#ffffff21 .8px,#0000 .8px);background-size:7px 7px;margin-top:-2px;position:relative}.features__heading{z-index:1;grid-template-columns:.72fr 1fr;column-gap:70px;display:grid;position:relative}.features__heading .section-kicker{grid-column:1/-1}.features__lead{color:#ffffffc7;align-self:end;margin:0 0 5px;font-size:.88rem;line-height:2}.features__grid{z-index:1;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,40px);margin-top:60px;padding-bottom:50px;display:grid;position:relative}.feature-card{color:var(--color-ink)}.feature-card:nth-child(2){padding-top:36px}.feature-card:nth-child(2) .feature-card__image-wrap{transform:rotate(1.7deg)}.feature-card:nth-child(3) .feature-card__image-wrap{transform:rotate(-1.4deg)}.feature-card__image-wrap{background:var(--color-white);padding:8px;position:relative;overflow:visible;transform:rotate(-1.4deg);box-shadow:10px 12px #005c4152}.feature-card__image{aspect-ratio:1/.82;object-fit:cover;width:100%;display:block}.feature-card__number{width:58px;height:58px;color:var(--color-ink);background:var(--color-yellow);border-radius:50% 45% 48% 40%;place-items:center;font-family:Georgia,serif;font-size:.86rem;font-weight:700;display:grid;position:absolute;top:-17px;left:-12px;transform:rotate(-8deg)}.feature-card__title{color:var(--color-white);font-family:var(--font-serif);letter-spacing:.06em;margin:25px 0 0;font-size:clamp(1.25rem,2vw,1.75rem);font-weight:700}.feature-card__text{color:#ffffffbf;margin:10px 0 0;font-size:.78rem;line-height:1.9}.plans{background-color:#fff8db;background-image:radial-gradient(#ed7d2d12 .8px,#0000 .8px);background-size:6px 6px;position:relative}.plans__heading{grid-template-columns:1fr minmax(290px,.5fr);align-items:end;gap:60px;margin-bottom:58px;display:grid}.plans__heading-note{color:var(--color-ink-soft);margin:0 0 8px;font-size:.78rem;line-height:1.9}.plans__grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.plan-card{border:2px solid var(--color-olive-deep);background:#fffef9f0;border-radius:30px 8px;flex-direction:column;min-height:500px;padding:30px 26px 26px;transition:transform .25s,box-shadow .25s;display:flex;position:relative}.plan-card:hover{transform:translateY(-7px);box-shadow:0 24px 50px #483c2e21}.plan-card--featured{color:var(--color-white);border-color:var(--color-clay);background:var(--color-clay)}.plan-card--featured .plan-card__number,.plan-card--featured .plan-card__description{color:#ffffffbf}.plan-card--featured .plan-card__price,.plan-card--featured .plan-card__price-unit{color:var(--color-white)}.plan-card--featured .plan-card__notes,.plan-card--featured .plan-card__link{border-color:#fff3}.plan-card--featured .plan-card__check,.plan-card--featured .plan-card__link{color:var(--color-white)}.plan-card__top{justify-content:space-between;align-items:center;gap:10px;min-height:26px;display:flex}.plan-card__number{color:var(--color-olive-deep);letter-spacing:.15em;font-family:Georgia,serif;font-size:.67rem}.plan-card__badge{color:var(--color-olive-deep);background:var(--color-white);border-radius:999px;padding:4px 8px;font-size:.58rem;font-weight:700}.plan-card__name{font-family:var(--font-serif);letter-spacing:.08em;margin:30px 0 0;font-size:1.55rem;font-weight:700}.plan-card__price{color:var(--color-olive-deep);align-items:baseline;margin:10px 0 0;display:flex}.plan-card__price-number{font-family:Georgia,serif;font-size:clamp(2rem,2.6vw,2.75rem);font-weight:500;line-height:1.2}.plan-card__price-unit{color:var(--color-ink);margin-left:4px;font-size:.68rem;font-weight:600}.plan-card__description{color:var(--color-ink-soft);margin:24px 0 0;font-size:.79rem;line-height:1.9}.plan-card__notes{border-top:1px solid var(--color-line);gap:8px;margin:24px 0 0;padding:19px 0;list-style:none;display:grid}.plan-card__note{align-items:center;gap:9px;font-size:.72rem;font-weight:600;display:flex}.plan-card__check{width:14px;height:14px;color:var(--color-olive-deep);border:1px solid;border-radius:50%;flex:none;font-size:0;display:block;position:relative}.plan-card__check:after{content:"";border-bottom:1px solid;border-left:1px solid;width:6px;height:3px;position:absolute;top:3px;left:3px;transform:rotate(-45deg)}.plan-card__link{border-top:1px solid var(--color-line);color:var(--color-olive-deep);justify-content:space-between;align-items:center;gap:14px;margin-top:auto;padding-top:18px;font-size:.73rem;font-weight:700;text-decoration:none;display:flex}.plan-card__arrow{width:19px;transition:transform .2s}.plan-card__link:hover .plan-card__arrow{transform:translate(4px)}.flow{background-color:var(--color-paper);background-image:linear-gradient(135deg,#16aa7809 25%,#0000 25% 50%,#16aa7809 50% 75%,#0000 75%);background-size:28px 28px}.flow__heading{grid-template-columns:minmax(0,.8fr) minmax(320px,.45fr);column-gap:80px;display:grid}.flow__heading .section-kicker{grid-column:1/-1}.flow__heading-text{color:var(--color-ink-soft);align-self:end;margin:0 0 5px;font-size:.85rem;line-height:2}.flow__body{grid-template-columns:1.04fr .96fr;align-items:stretch;gap:clamp(50px,8vw,120px);width:min(1380px,100% - 48px);margin:64px auto 0;display:grid}.flow__image-wrap{border:10px solid var(--color-white);min-height:680px;box-shadow:var(--shadow-soft);clip-path:polygon(4% 0,96% 3%,100% 88%,91% 100%,0 96%,2% 10%);border-radius:0;position:relative;overflow:hidden;transform:rotate(-1deg)}.flow__image{object-fit:cover;width:100%;height:100%}.flow__image-caption{backdrop-filter:blur(12px);background:#fffdf9e0;border:1px solid #ffffffbf;border-radius:14px;flex-direction:column;min-width:205px;padding:20px 24px;display:flex;position:absolute;bottom:28px;right:28px}.flow__caption-label{color:var(--color-clay);letter-spacing:.16em;text-transform:uppercase;font-family:Georgia,serif;font-size:.67rem}.flow__caption-text{font-family:var(--font-serif);margin-top:6px;font-size:.95rem;line-height:1.7}.flow__steps{flex-direction:column;justify-content:center;margin:0;padding:30px 0;list-style:none;display:flex}.flow-step{border-bottom:1px solid var(--color-line);grid-template-columns:62px 1fr;gap:24px;padding:28px 0;display:grid}.flow-step:first-child{border-top:1px solid var(--color-line)}.flow-step__number{color:var(--color-clay);letter-spacing:.1em;padding-top:4px;font-family:Georgia,serif;font-size:.82rem}.flow-step__title,.flow-step__text{margin:0}.flow-step__title{font-family:var(--font-serif);font-size:1.3rem;font-weight:700}.flow-step__text{color:var(--color-ink-soft);margin-top:8px;font-size:.81rem;line-height:1.9}.faq{background-color:var(--color-white);background-image:radial-gradient(#ed7d2d0a .8px,#0000 .8px);background-size:7px 7px}.faq__inner{grid-template-columns:minmax(280px,.55fr) minmax(0,1fr);gap:clamp(60px,10vw,150px);display:grid}.faq__heading{top:calc(var(--header-height) + 50px);align-self:start;position:sticky}.faq__intro{color:var(--color-ink-soft);margin:28px 0 0;font-size:.84rem;line-height:2}.faq__button{margin-top:28px}.faq__list{display:grid}.faq-item{border-bottom:1px solid var(--color-line)}.faq-item:first-child{border-top:1px solid var(--color-line)}.faq-item[open] .faq-item__toggle:after{transform:translate(-50%,-50%)rotate(0)}.faq-item__question{cursor:pointer;grid-template-columns:38px 1fr 28px;align-items:center;gap:16px;min-height:100px;padding:10px 0;list-style:none;display:grid}.faq-item__question::-webkit-details-marker{display:none}.faq-item__mark{color:var(--color-clay);font-family:Georgia,serif;font-size:1.1rem}.faq-item__mark--answer{color:var(--color-olive-deep)}.faq-item__question-text{font-family:var(--font-serif);font-size:1.05rem;font-weight:600;line-height:1.7}.faq-item__toggle{border:1px solid var(--color-line);border-radius:50%;width:28px;height:28px;display:block;position:relative}.faq-item__toggle:before,.faq-item__toggle:after{background:var(--color-ink);content:"";width:10px;height:1px;transition:transform .2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.faq-item__toggle:after{transform:translate(-50%,-50%)rotate(90deg)}.faq-item__answer{grid-template-columns:38px 1fr;gap:16px;padding:0 44px 28px 0;display:grid}.faq-item__answer-text{color:var(--color-ink-soft);margin:0;font-size:.84rem;line-height:2}.contact{color:var(--color-white);background:#01a570;position:relative;overflow:hidden}.contact__inner{z-index:2;text-align:center;position:relative}.contact__kicker{color:#ffffff9e;letter-spacing:.22em;text-transform:uppercase;margin:0 0 20px;font-family:Georgia,serif;font-size:.73rem}.contact__title{font-family:var(--font-serif);letter-spacing:.05em;white-space:nowrap;margin:0;font-size:clamp(1.9rem,4vw,3.4rem);font-weight:700;line-height:1.55}.contact__lead{color:#ffffffb8;margin:26px 0 0;font-size:.86rem;line-height:2}.contact__actions{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:42px;display:flex}.contact__phone{min-height:74px;color:var(--color-ink);background:var(--color-white);border-radius:999px;align-items:center;gap:14px;padding:10px 30px;text-decoration:none;transition:transform .22s;display:flex}.contact__phone:hover{transform:translateY(-2px)}.contact__phone-icon{width:25px;color:var(--color-olive-deep)}.contact__phone-copy{flex-direction:column;align-items:flex-start;line-height:1.15;display:flex}.contact__phone-label{font-size:.66rem}.contact__phone-number{letter-spacing:.04em;margin-top:4px;font-family:Georgia,serif;font-size:1.45rem;font-weight:500}.contact__line{background:0 0;border:1px solid #fff6;min-height:74px}.contact__line:hover{color:var(--color-olive-deep);background:var(--color-white)}.contact__ornament{border:1px solid #ffffff1a;border-radius:50%;width:310px;height:310px;position:absolute}.contact__ornament:before,.contact__ornament:after{content:"";border:1px solid #ffffff14;border-radius:50%;position:absolute}.contact__ornament:before{inset:36px}.contact__ornament:after{inset:78px}.contact__ornament--left{bottom:-150px;left:-90px}.contact__ornament--right{top:-170px;right:-60px}.footer{color:#d9d4ca;background:#243a30}.footer__main{grid-template-columns:minmax(270px,.9fr) minmax(360px,1.1fr) .45fr;gap:clamp(45px,8vw,120px);padding-block:78px;display:grid}.footer__logo-link{background:#ffffffed;border-radius:8px;width:min(270px,100%);padding:14px 18px;display:block}.footer__logo{width:100%;height:auto;display:block}.footer__tagline{color:#b8b2a8;font-family:var(--font-serif);margin:24px 0 0;font-size:.85rem;line-height:1.9}.footer__socials{gap:10px;margin-top:28px;display:flex}.footer__social{color:#d9d4ca;border:1px solid #ffffff2e;border-radius:50%;place-items:center;width:42px;height:42px;transition:border-color .2s,color .2s,transform .2s;display:grid}.footer__social:hover{color:var(--color-white);border-color:#ffffff8c;transform:translateY(-2px)}.footer__social-icon{width:19px}.footer__heading{color:var(--color-white);font-family:var(--font-serif);margin:0 0 24px;font-size:1rem;font-weight:500}.footer__details{margin:0;display:grid}.footer__detail{border-bottom:1px solid #ffffff17;grid-template-columns:88px 1fr;padding:10px 0;display:grid}.footer__term,.footer__description{margin:0;font-size:.74rem;line-height:1.75}.footer__term{color:#908c84}.footer__description{color:#d9d4ca}.footer__text-link{color:inherit;text-decoration:none}.footer__nav{flex-direction:column;align-items:flex-start;display:flex}.footer__nav-link{color:#b8b2a8;padding:7px 0;font-size:.75rem;text-decoration:none;transition:color .2s}.footer__nav-link:hover{color:var(--color-white)}.footer__bottom{border-top:1px solid #ffffff14}.footer__bottom-inner{justify-content:space-between;align-items:center;gap:20px;min-height:68px;display:flex}.footer__copyright{color:#7f7b74;letter-spacing:.08em;margin:0;font-family:Georgia,serif;font-size:.65rem}.footer__corporate{color:#9d9890;font-size:.68rem;text-decoration:none}.mobile-contact{display:none}@media (width<=1180px){.header__nav,.header__phone{display:none}.header__logo-link{margin-right:auto}.menu-button{display:block}.plans__grid{grid-template-columns:repeat(2,1fr)}.plan-card{min-height:450px}.footer__main{grid-template-columns:.8fr 1.2fr}.footer__nav{display:none}}@media (width<=900px){.hero{background:var(--color-paper);min-height:auto}.hero__inner{grid-template-columns:1fr}.hero__copy{max-width:650px;padding-bottom:0}.hero__visual{min-height:560px;margin-left:5%}.hero__arch{right:0}.hero__scroll{display:none}.promise__inner{grid-template-columns:1fr}.promise__visual{width:min(540px,100%);min-height:610px;margin-inline:auto}.promise__copy{width:min(680px,100%);margin-inline:auto}.features__heading{display:block}.features__lead{margin-top:22px}.flow__heading{display:block}.flow__heading-text{max-width:540px;margin-top:24px}.flow__body{grid-template-columns:1fr;gap:30px;width:100%}.flow__image-wrap{width:calc(100% - 24px);min-height:560px}.flow__steps{width:var(--container);margin-inline:auto}.faq__inner{grid-template-columns:1fr;gap:50px}.faq__heading{position:static}}@media (width<=767px){.header__inner{width:calc(100% - 28px)}.header__logo-link{width:180px}.hero{padding:34px 0 52px}.hero__inner{gap:38px;min-height:auto}.hero__eyebrow{letter-spacing:.1em;margin-bottom:20px;font-size:.62rem}.hero__title{letter-spacing:.04em;font-size:clamp(2rem,8.4vw,2.55rem);line-height:1.34}.hero__title-line--indent{box-shadow:6px 6px 0 var(--color-yellow);margin-left:0;padding:0 .14em .04em .18em}.hero__lead{margin-top:20px;font-size:.86rem;line-height:1.9}.hero__lead-break{display:none}.hero__actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:22px;display:grid}.hero__actions .button{padding-inline:13px;font-size:.78rem}.hero__phone-button{gap:6px;padding-inline:9px}.hero__phone-button .button__icon{width:17px}.hero__phone-label{display:none}.hero__phone-number{white-space:nowrap;font-size:.86rem}.hero__visual{min-height:420px;margin:0 0 0 12px}.hero__arch{border-width:6px}.hero__image{object-position:56% center}.promise:before{display:none}.promise__visual{border-radius:6px 64px 6px 52px;min-height:440px}.promise__portrait--association{width:59%;right:-2%}.promise__visual-note{padding:10px 13px;font-size:.7rem;top:54px;left:-8px}.promise__lead{margin-top:24px}.promise__point{grid-template-columns:50px 1fr;gap:13px;padding:18px 0}.promise__point-icon-wrap{width:44px;height:44px}.nature-divider{height:92px}.soft-divider{height:66px}.features__lead-break{display:none}.features__grid{grid-template-columns:1fr;gap:46px;margin-top:44px;padding-bottom:30px}.feature-card{width:calc(100% - 12px);margin-inline:auto}.feature-card:nth-child(2){padding-top:0}.feature-card__image{aspect-ratio:1/.74}.plans__heading{margin-bottom:38px;display:block}.plans__heading-note{margin-top:22px}.plans__grid{grid-template-columns:1fr;gap:12px}.plan-card{min-height:0;padding:26px 22px 22px}.plan-card__name{margin-top:22px}.plan-card__notes{margin-top:20px}.plan-card__link{margin-top:6px}.flow__body{margin-top:40px}.flow__image-wrap{border-width:7px;min-height:410px}.flow__image{object-position:58% center}.flow__image-caption{min-width:170px;padding:14px 16px;bottom:16px;right:16px}.flow__caption-text{font-size:.8rem}.flow-step{grid-template-columns:38px 1fr;gap:14px;padding:23px 0}.flow-step__title{font-size:1.15rem}.faq-item__question{grid-template-columns:26px 1fr 26px;gap:10px;min-height:88px}.faq-item__question-text{font-size:.94rem}.faq-item__answer{grid-template-columns:26px 1fr;gap:10px;padding-right:20px}.contact{padding-bottom:104px}.contact__title{white-space:nowrap;font-size:1.55rem}.contact__break{display:none}.contact__actions{display:grid}.contact__phone,.contact__line{justify-content:center;width:100%}.footer{padding-bottom:66px}.footer__main{grid-template-columns:1fr;gap:52px;padding-block:60px}.footer__logo-link{width:240px}.footer__detail{grid-template-columns:74px 1fr}.footer__bottom-inner{flex-direction:column;justify-content:center;gap:2px;padding-block:14px}.mobile-contact{z-index:90;grid-template-columns:1fr 1fr;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 30px #36302929}.mobile-contact__link{min-height:66px;color:var(--color-white);justify-content:center;align-items:center;gap:9px;font-size:.78rem;font-weight:700;text-decoration:none;display:flex}.mobile-contact__link--phone{background:var(--color-clay)}.mobile-contact__link--line{background:var(--color-olive-deep)}.mobile-contact__icon{width:20px}}
