/* Editorial information pages for Yuzhanka. */
body:has(.yz-info-page) header.globalheader {
    --globalheader-mb: 0;
    margin-bottom: 0 !important;
    box-shadow: 0 1px 0 rgba(45, 38, 31, .08);
}
body:has(.yz-info-page) main.maincontent {
    padding: 28px 0 76px;
    background: #f8f7f5;
}
body:has(.yz-info-page) main.maincontent > .container {
    width: min(1180px, calc(100% - 40px));
    max-width: none;
    padding-top: 0;
}

.yz-info-page {
    --yz-accent: #c44f2a;
    --yz-ink: #292522;
    --yz-muted: #6f6963;
    --yz-line: #dfdbd5;
    --yz-paper: #fff;
    color: var(--yz-ink);
    font-size: 16px;
    line-height: 1.7;
}
.yz-info-page, .yz-info-page * { box-sizing: border-box; }
.yz-info-page h1, .yz-info-page h2, .yz-info-page h3,
.yz-info-page p, .yz-info-page ul, .yz-info-page ol,
.yz-info-page dl, .yz-info-page blockquote { margin-top: 0; }
.yz-info-page p { text-wrap: pretty; }

.yz-info-hero {
    position: relative;
    isolation: isolate;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 170px;
    gap: clamp(24px, 4vw, 48px);
    min-height: 430px;
    padding: clamp(42px, 6vw, 76px);
    overflow: hidden;
    border-radius: 22px;
    background: #efe5d9;
}
.yz-info-hero__copy { position: relative; z-index: 2; align-self: center; }
.yz-info-page .yz-info-hero h1 {
    max-width: 820px;
    margin: 0 0 28px;
    color: #2d2722;
    font-size: clamp(40px, 4.2vw, 56px);
    font-weight: 650;
    line-height: .98;
    letter-spacing: -.052em;
    text-wrap: balance;
}
.yz-info-lead {
    max-width: 730px;
    margin-bottom: 0;
    color: #675c52;
    font-size: clamp(16px, 1.5vw, 19px);
    line-height: 1.68;
}
.yz-info-hero__mark {
    position: relative;
    align-self: stretch;
    min-height: 250px;
    border-radius: 50% 50% 42% 58% / 48% 44% 56% 52%;
    background: rgba(255,255,255,.52);
    transform: rotate(-8deg);
}
.yz-info-hero__mark::before,
.yz-info-hero__mark::after {
    content: "";
    position: absolute;
    border-radius: 50%;
}
.yz-info-hero__mark::before {
    inset: 12% -20% -8% 24%;
    border: 2px solid rgba(161, 63, 30, .42);
}
.yz-info-hero__mark::after {
    width: 64px;
    height: 64px;
    right: 19%;
    top: 21%;
    background: var(--yz-accent);
    box-shadow: -78px 135px 0 -16px #d7a148;
}

.yz-info-section { margin-top: clamp(56px, 8vw, 92px); }
.yz-info-intro,
.yz-service-summary > p {
    max-width: 850px;
    margin-bottom: 34px;
    color: #514b46;
    font-size: clamp(18px, 2vw, 23px);
    line-height: 1.58;
    letter-spacing: -.012em;
}
.yz-section-title,
.yz-section-heading h2 {
    max-width: 920px;
    margin: 0 0 30px;
    color: var(--yz-ink);
    font-size: clamp(28px, 3.2vw, 43px);
    font-weight: 650;
    line-height: 1.08;
    letter-spacing: -.038em;
    text-wrap: balance;
}
.yz-section-heading {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    padding-top: 25px;
    border-top: 1px solid var(--yz-line);
}
.yz-section-heading h2 { margin-bottom: 28px; }
.yz-minor-title {
    max-width: 760px;
    margin: 44px 0 22px;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.4;
}

.yz-stat-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    margin-bottom: 0;
    padding: 0;
    overflow: hidden;
    border-radius: 15px;
    background: #ddd7cf;
    list-style: none;
}
.yz-stat-grid li {
    display: flex;
    flex-direction: column;
    min-height: 176px;
    padding: 30px;
    background: var(--yz-paper);
}
.yz-stat-grid strong {
    order: -1;
    margin-bottom: 24px;
    color: var(--yz-accent);
    font-size: clamp(27px, 3vw, 40px);
    font-weight: 650;
    line-height: 1;
    letter-spacing: -.04em;
    font-variant-numeric: tabular-nums;
}
.yz-stat-grid span { color: var(--yz-muted); font-size: 14px; line-height: 1.5; }

.yz-reason-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    counter-reset: reason;
    border-top: 1px solid var(--yz-line);
}
.yz-reason-list article {
    position: relative;
    counter-increment: reason;
    padding: 65px 30px 0 0;
}
.yz-reason-list article + article { padding-left: 30px; border-left: 1px solid var(--yz-line); }
.yz-reason-list article::before {
    content: "0" counter(reason);
    position: absolute;
    top: 20px;
    color: var(--yz-accent);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
}
.yz-reason-list h2 { margin: 0 0 18px; font-size: 22px; line-height: 1.23; letter-spacing: -.025em; }
.yz-reason-list p { margin-bottom: 0; color: var(--yz-muted); font-size: 14px; line-height: 1.68; }

.yz-purpose-grid {
    display: grid;
    grid-template-columns: .72fr 1.28fr;
    gap: 1px;
    overflow: hidden;
    border-radius: 18px;
    background: #dcd8d2;
}
.yz-purpose-grid article { padding: clamp(30px, 4vw, 52px); background: #eeece8; }
.yz-purpose-grid article:last-child { background: #e6ebed; }
.yz-purpose-grid h2 { margin: 0 0 22px; font-size: 31px; line-height: 1.1; letter-spacing: -.035em; }
.yz-purpose-grid p { margin-bottom: 0; color: #5f5a55; }

.yz-advantage-list {
    counter-reset: advantage;
    margin-bottom: 0;
    padding: 0;
    border-top: 1px solid var(--yz-line);
    list-style: none;
}
.yz-advantage-list li {
    position: relative;
    display: grid;
    grid-template-columns: 78px minmax(0, 1fr);
    counter-increment: advantage;
    padding: 27px 0 28px;
    border-bottom: 1px solid var(--yz-line);
}
.yz-advantage-list li::before {
    content: "0" counter(advantage);
    color: var(--yz-accent);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .08em;
}
.yz-advantage-list h3 { margin: 0; font-size: 20px; font-weight: 600; line-height: 1.35; }
.yz-advantage-list p { max-width: 830px; margin: 12px 0 0; color: var(--yz-muted); }
.yz-info-quote {
    margin: clamp(60px, 9vw, 110px) 0 0;
    padding: clamp(34px, 5vw, 58px);
    border: 0;
    border-radius: 17px;
    background: #2e2b28;
    color: #f7f2ec;
    font-size: clamp(25px, 3.2vw, 42px);
    font-weight: 550;
    line-height: 1.2;
    letter-spacing: -.035em;
    text-wrap: balance;
}

.yz-service-summary {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
    gap: 42px;
    align-items: start;
}
.yz-service-summary > p { margin-bottom: 0; }
.yz-notice {
    padding: 24px 27px;
    border-left: 3px solid var(--yz-accent);
    border-radius: 0 10px 10px 0;
    background: #f1ebe5;
    color: #5e5147;
    font-size: 14px;
    line-height: 1.65;
}
.yz-notice--warning { background: #f4e8df; color: #713b27; }
.yz-notice--strong { margin-top: 28px; background: #342f2b; color: #f7f1ea; border-left-color: #d77a52; }

.yz-schedule-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
    margin-bottom: 0;
    padding: 1px;
    border-radius: 13px;
    background: var(--yz-line);
    list-style: none;
}
.yz-schedule-list li {
    position: relative;
    min-height: 78px;
    padding: 19px 22px 19px 44px;
    background: #fff;
    color: #514b46;
    font-size: 14px;
    line-height: 1.5;
}
.yz-schedule-list li::before {
    content: "";
    position: absolute;
    left: 22px;
    top: 27px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--yz-accent);
}
.yz-pickup-card {
    display: grid;
    grid-template-columns: .62fr 1fr;
    gap: 18px 40px;
    margin-top: 34px;
    padding: clamp(28px, 4vw, 44px);
    border-radius: 15px;
    background: #ebe9e5;
}
.yz-pickup-card h3 { margin: 0; font-size: 26px; line-height: 1.15; letter-spacing: -.03em; }
.yz-pickup-card p { margin: 0; color: var(--yz-muted); }
.yz-pickup-card ul { grid-column: 1 / -1; margin: 0; padding: 20px 0 0; border-top: 1px solid #d6d1cb; list-style: none; }
.yz-pickup-card li + li { margin-top: 8px; }

.yz-operator-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}
.yz-operator-grid article {
    padding: 28px;
    border-radius: 13px;
    background: #e9edef;
}
.yz-operator-grid h3 { margin: 0 0 12px; font-size: 23px; letter-spacing: -.025em; }
.yz-operator-grid p { margin-bottom: 0; color: var(--yz-muted); }
.yz-check-list { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-bottom: 0; padding: 0; list-style: none; }
.yz-check-list li { padding: 27px; border-top: 2px solid var(--yz-accent); background: #fff; }

.yz-method-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    counter-reset: method;
}
.yz-method-card {
    position: relative;
    counter-increment: method;
    min-height: 100%;
    padding: 34px;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 18px 45px rgba(75, 58, 43, .06);
}
.yz-method-card::before {
    content: "0" counter(method);
    display: block;
    margin-bottom: 42px;
    color: var(--yz-accent);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .1em;
}
.yz-method-card__number { display: none; }
.yz-method-card h3 { margin: 0 0 27px; font-size: 24px; line-height: 1.25; letter-spacing: -.025em; }
.yz-method-card dl { margin-bottom: 0; }
.yz-method-card dl > div { padding-top: 18px; border-top: 1px solid var(--yz-line); }
.yz-method-card dl > div + div { margin-top: 18px; }
.yz-method-card dt { margin-bottom: 6px; font-weight: 650; }
.yz-method-card dd { margin-left: 0; color: var(--yz-muted); font-size: 14px; line-height: 1.65; }

.yz-security-section {
    padding: clamp(34px, 5vw, 60px);
    border-radius: 18px;
    background: #e9edef;
}
.yz-security-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; margin-bottom: 38px; }
.yz-security-intro p { margin-bottom: 0; color: #555e63; }
.yz-guarantee-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
    overflow: hidden;
    border-radius: 12px;
    background: #cfd5d8;
}
.yz-guarantee-grid article { padding: 29px; background: #f8fafb; }
.yz-guarantee-grid h3 { margin: 0 0 12px; font-size: 19px; line-height: 1.35; }
.yz-guarantee-grid p { margin-bottom: 0; color: #647078; font-size: 14px; line-height: 1.65; }

@media (max-width: 900px) {
    .yz-info-hero { grid-template-columns: minmax(0, 1fr) 145px; min-height: 390px; }
    .yz-info-page .yz-info-hero h1 { font-size: 44px; }
    .yz-reason-list { grid-template-columns: 1fr; }
    .yz-reason-list article, .yz-reason-list article + article { padding: 62px 0 30px; border-left: 0; border-bottom: 1px solid var(--yz-line); }
    .yz-purpose-grid { grid-template-columns: 1fr; }
    .yz-service-summary { grid-template-columns: 1fr; }
}

@media (max-width: 700px) {
    body:has(.yz-info-page) main.maincontent { padding: 14px 0 48px; }
    body:has(.yz-info-page) main.maincontent > .container { width: min(100% - 24px, 1180px); }
    .yz-info-page { font-size: 15px; }
    .yz-info-hero { grid-template-columns: 1fr; min-height: 0; padding: 31px 25px 36px; border-radius: 15px; }
    .yz-info-page .yz-info-hero h1 { margin-bottom: 21px; font-size: clamp(34px, 10.5vw, 46px); }
    .yz-info-lead { font-size: 15px; }
    .yz-info-hero__mark { position: absolute; right: -90px; top: -90px; width: 230px; min-height: 230px; opacity: .35; }
    .yz-info-section { margin-top: 52px; }
    .yz-stat-grid, .yz-method-grid, .yz-operator-grid, .yz-check-list, .yz-security-intro, .yz-guarantee-grid { grid-template-columns: 1fr; }
    .yz-stat-grid li { min-height: 135px; padding: 24px; }
    .yz-stat-grid strong { margin-bottom: 16px; }
    .yz-section-title, .yz-section-heading h2 { font-size: 28px; }
    .yz-advantage-list li { grid-template-columns: 46px minmax(0,1fr); }
    .yz-info-quote { font-size: 27px; }
    .yz-schedule-list { grid-template-columns: 1fr; }
    .yz-schedule-list li { min-height: 0; }
    .yz-pickup-card { grid-template-columns: 1fr; padding: 25px; }
    .yz-pickup-card ul { grid-column: auto; }
    .yz-method-card { padding: 27px 24px; }
    .yz-method-card::before { margin-bottom: 28px; }
    .yz-security-section { padding: 27px 24px; }
}

@media (prefers-reduced-motion: reduce) {
    .yz-info-page *, .yz-info-page *::before, .yz-info-page *::after { scroll-behavior: auto !important; }
}
