.story-section, .story-footer { --story-navy: #103d91; --story-ink: #152a4b; --story-muted: #637087; --story-line: #e1e7f0; color: var(--story-ink); }
.story-section { padding: 120px 0; scroll-margin-top: 35px; }
.story-shell { width: min(1180px, 100%); padding-inline: 32px; margin-inline: auto; }
.story-heading { margin-bottom: 60px; }
.story-eyebrow { margin: 0 0 20px; font-size: 13px; font-weight: 700; color: var(--story-navy); letter-spacing: .14em; }
.story-heading h2 { margin: 0 0 25px; font-size: clamp(40px, 4.4vw, 62px); line-height: 1.25; letter-spacing: -.055em; font-weight: 750; word-break: keep-all; }
.story-heading > p:not(.story-eyebrow) { margin: 0; font-size: 21px; line-height: 1.75; color: var(--story-muted); word-break: keep-all; }
.story-button { display: inline-flex; align-items: center; justify-content: center; gap: 35px; padding: 22px 28px; min-height: 72px; border-radius: 16px; background: var(--story-navy); color: white; font-size: 21px; font-weight: 650; }
.story-button > span { font-size: 27px; line-height: 1; }
.story-button:focus-visible, .story-text-link:focus-visible, .story-footer a:focus-visible, .story-map-links a:focus-visible, .story-direction-tabs button:focus-visible { outline: 3px solid #7495d8; outline-offset: 5px; }
.story-text-link { display: inline-block; color: var(--story-navy); font-size: 18px; font-weight: 600; line-height: 1.7; }
.story-footnote { margin: 35px 0 0; color: var(--story-muted); font-size: 16px; line-height: 1.7; word-break: keep-all; }
.story-art { display: block; flex: none; width: 128px; height: 128px; overflow: visible; stroke: none; }
.story-art-paper { fill: #e7eeff; stroke: #103d91; stroke-width: 3; stroke-linejoin: round; }
.story-art-shade { fill: #d1ddef; }
.story-art-blue { fill: #103d91; }
.story-art-white { fill: white; stroke: #103d91; stroke-width: 3; }
.story-art-accent { fill: #f4cf74; }
.story-art-line { stroke: #103d91; stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; }
.story-art-check { stroke: white; stroke-width: 6; stroke-linecap: round; stroke-linejoin: round; }
.story-art-dark { stroke: #103d91; stroke-width: 4; }
.story-why { background: #eef3ff; }
.story-benefits { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.story-benefit { padding: 30px 25px 35px; border: 1px solid #e4eaf5; border-radius: 28px; background: white; box-shadow: 0 9px 0 #dce5f480, 0 20px 30px #193b7110; }
.story-benefit > .story-art { margin: 0 auto 22px; }
.story-benefit > span { display: block; color: var(--story-navy); font-size: 15px; font-weight: 600; margin-bottom: 12px; }
.story-benefit h3 { margin: 0 0 17px; font-size: 25px; letter-spacing: -.04em; line-height: 1.35; word-break: keep-all; }
.story-benefit p { margin: 0; font-size: 17px; line-height: 1.8; color: var(--story-muted); word-break: keep-all; }
.story-why-tail { display: flex; justify-content: space-between; align-items: center; gap: 28px; margin-top: 45px; }
.story-why-tail > span { font-size: 20px; line-height: 1.7; word-break: keep-all; }
.story-types { background: white; }
.story-types-layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: 48px; align-items: stretch; }
.story-watch-hero { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 48px 30px; background: #eef2fa; border-radius: 34px; text-align: center; }
.story-watch-hero > img { display: block; width: 100%; height: 410px; object-fit: contain; border-radius: 16px; margin-bottom: 28px; }
.story-watch-hero p { margin: 0 0 16px; color: var(--story-navy); font-size: 22px; font-weight: 650; line-height: 1.5; letter-spacing: -.02em; }
.story-watch-hero > span { color: var(--story-muted); font-size: 17px; line-height: 1.8; }
.story-type-list { display: grid; gap: 10px; }
.story-type-list > article { display: flex; align-items: center; gap: 20px; padding: 20px 0; border-bottom: 1px solid var(--story-line); }
.story-type-list .story-art { width: 72px; height: 72px; }
.story-type-list h3 { margin: 0 0 7px; font-size: 25px; line-height: 1.4; letter-spacing: -.04em; }
.story-type-list strong { font-size: 17px; font-weight: 500; color: var(--story-muted); }
.story-type-list p { margin: 8px 0 0; font-size: 16px; line-height: 1.65; color: var(--story-muted); word-break: keep-all; }
.story-type-list > article > span { margin-left: auto; font-size: 24px; color: #b1bfd4; }
.story-guide { background: #103d91; color: white; }
.story-guide .story-eyebrow { color: #c3d3f4; }
.story-guide .story-heading > p:not(.story-eyebrow) { color: #c7d6f2; }
.story-process { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; list-style: none; margin: 0; padding: 0; }
.story-process > li { border-radius: 32px; padding: 34px; background: white; color: var(--story-ink); box-shadow: 0 9px 0 #092969; }
.story-step-number { display: block; font-size: 15px; font-weight: 650; color: #8a96aa; letter-spacing: .08em; }
.story-process .story-art { width: 150px; height: 150px; margin: 22px auto 28px; }
.story-process h3 { margin: 0 0 16px; font-size: 29px; line-height: 1.35; letter-spacing: -.04em; word-break: keep-all; }
.story-process strong { font-size: 17px; color: var(--story-navy); font-weight: 600; line-height: 1.6; }
.story-process p { margin: 16px 0 0; font-size: 17px; line-height: 1.85; color: var(--story-muted); word-break: keep-all; }
.story-process-tail { display: flex; justify-content: space-between; align-items: center; gap: 35px; margin-top: 50px; }
.story-process-tail p { color: #c7d6f2; font-size: 18px; line-height: 1.8; word-break: keep-all; }
.story-guide .story-button { background: white; color: #103d91; }
.story-faq { background: #f6f8fc; }
.story-faq-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: 55px; align-items: start; }
.story-faq .story-heading { margin-bottom: 0; }
.story-faq .story-heading h2 { font-size: clamp(40px, 4vw, 55px); }
.story-question-art { display: flex; align-items: center; gap: 8px; margin: 35px 0 25px; }
.story-question-art > span { display: grid; place-items: center; background: #103d91; color: white; width: 104px; height: 112px; border-radius: 28px 28px 7px 28px; font-size: 65px; font-weight: 700; transform: rotate(-7deg); }
.story-question-art .story-art { width: 170px; height: 170px; }
.story-question-art > b { color: #103d91; font-size: 60px; transform: rotate(7deg); }
.story-faq-list { display: grid; gap: 14px; min-width: 0; }
.story-faq-list details { background: white; border: 1px solid #e1e7f0; border-radius: 20px; overflow: hidden; }
.story-faq-list summary { display: flex; align-items: center; gap: 12px; padding: 26px 23px; cursor: pointer; font-size: 21px; font-weight: 650; line-height: 1.55; list-style: none; word-break: keep-all; }
.story-faq-list summary::-webkit-details-marker { display: none; }
.story-faq-list summary > span { color: #103d91; align-self: flex-start; }
.story-faq-list summary > b { margin-left: auto; font-size: 24px; font-weight: 400; flex: none; color: #8292ad; }
.story-faq-list details[open] summary > b { transform: rotate(45deg); }
.story-faq-list summary:focus-visible { outline: 3px solid #7495d8; outline-offset: -4px; border-radius: 20px; }
.story-answer { display: flex; gap: 13px; padding: 0 23px 27px; }
.story-answer > span { color: #103d91; font-size: 20px; font-weight: 650; line-height: 1.8; }
.story-answer p { margin: 0; font-size: 18px; line-height: 1.9; color: var(--story-muted); word-break: keep-all; }
.story-location { background: white; }
.story-network { scroll-margin-top: 35px; }
.story-direction-tabs { display: flex; gap: 12px; margin-bottom: 28px; }
.story-direction-tabs button { padding: 17px 24px; border: 1px solid #dae3f1; background: #f3f6fb; color: #637087; border-radius: 14px; font: inherit; font-size: 19px; font-weight: 600; cursor: pointer; }
.story-direction-tabs button[aria-pressed="true"] { background: #103d91; border-color: #103d91; color: white; }
.story-visit-layout { display: grid; grid-template-columns: 1.1fr .9fr; gap: 50px; align-items: center; }
.story-visit-panel { background: #edf3ff; border-radius: 30px; padding: 15px 15px 27px; text-align: center; }
.story-visit-art { display: block; width: 100%; height: auto; stroke: none; }
.visit-land { fill: #e5edfc; }
.visit-road { stroke: white; stroke-width: 31; stroke-linecap: round; }
.visit-road-center { stroke: #d4dff1; stroke-width: 2; stroke-dasharray: 8 13; }
.visit-block { fill: #cbd8ed; }
.visit-tree { fill: #adcfc8; }
.visit-building-base { fill: #b6c9ee; }
.visit-building { fill: #103d91; }
.visit-door { fill: #88a7e0; }
.visit-windows { fill: white; }
.visit-pin { fill: #103d91; }
.visit-pin-center { fill: white; }
.visit-route { stroke: #7999d3; stroke-width: 4; stroke-dasharray: 7 9; stroke-linecap: round; }
.visit-route-start { fill: #f4cf74; stroke: white; stroke-width: 4; }
.visit-label { fill: #7285a4; font-family: inherit; font-size: 17px; }
.story-visit-panel > span { display: block; color: #7285a4; font-size: 14px; }
.story-visit-copy h3 { font-size: 36px; letter-spacing: -.04em; margin: 18px 0 20px; }
.story-visit-copy address { font-size: 24px; font-style: normal; line-height: 1.65; letter-spacing: -.02em; word-break: keep-all; }
.story-visit-copy > p { margin: 22px 0 28px; font-size: 17px; line-height: 1.85; color: var(--story-muted); word-break: keep-all; }
.story-map-links { display: flex; gap: 12px; flex-wrap: wrap; }
.story-map-links a { display: flex; align-items: center; gap: 10px; background: #f3f6fb; border: 1px solid #e1e7f0; border-radius: 12px; padding: 15px 17px; font-size: 17px; font-weight: 600; }
.story-map-links a > span { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 5px; font-size: 16px; font-weight: 750; }
.story-naver-mark { background: #03c75a; color: white; }
.story-kakao-mark { background: #fee500; color: #1f2430; }
.story-visit-phone { display: block; margin-top: 30px; font-size: 28px; font-weight: 650; color: #103d91; font-variant-numeric: tabular-nums; }
.story-visit-phone > span { display: block; font-size: 16px; font-weight: 500; color: var(--story-muted); margin-top: 8px; }
.story-footer { background: #0b2459; color: white; padding: 90px 0 38px; }
.story-footer-lead { display: flex; justify-content: space-between; align-items: center; gap: 30px; padding-bottom: 65px; border-bottom: 1px solid #ffffff24; }
.story-footer-lead p { font-size: 19px; color: #afc5ef; margin: 0 0 15px; }
.story-footer-lead h2 { font-size: 44px; letter-spacing: -.045em; margin: 0; line-height: 1.3; word-break: keep-all; }
.story-footer .story-button { background: white; color: #103d91; }
.story-footer-main { display: grid; grid-template-columns: 1.2fr .8fr 1fr; gap: 35px; padding: 55px 0; }
.story-footer-brand > strong { font-size: 32px; font-weight: 650; }
.story-footer-brand > span { display: block; font-size: 11px; letter-spacing: .15em; color: #a9bbdd; margin-top: 10px; }
.story-footer-brand > p { margin: 22px 0 0; color: #a9bbdd; font-size: 14px; line-height: 1.9; word-break: keep-all; max-width: 310px; }
.story-footer-main nav { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 12px; align-content: start; font-size: 16px; }
.story-footer-contact > a:first-child { font-size: 26px; font-weight: 600; font-variant-numeric: tabular-nums; }
.story-footer-contact > a:last-child { display: block; color: #afc5ef; margin-top: 18px; font-size: 16px; }
.story-footer-bottom { border-top: 1px solid #ffffff24; padding-top: 30px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 25px; font-size: 13px; color: #91a8d0; line-height: 1.9; }
.story-footer-bottom p { margin: 0; }
.story-footer-bottom > div { display: flex; gap: 20px; }
.story-footer-bottom > small { width: 100%; font-size: 11px; letter-spacing: .06em; }
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .story-benefit, .story-process > li, .story-button { transition: transform .22s, box-shadow .22s; }
  .story-benefit:hover, .story-process > li:hover { transform: translateY(-5px); }
  .story-button:hover { transform: translateY(-3px); box-shadow: 0 12px 20px #0d2e771b; }
}
@media (max-width: 1050px) {
  .story-benefits { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 25px; }
  .story-benefit { display: grid; grid-template-columns: 110px 1fr; column-gap: 25px; padding: 30px; }
  .story-benefit > .story-art { grid-row: 1 / 4; width: 110px; height: 110px; margin: auto; }
  .story-benefit > span { margin-bottom: 8px; }
  .story-benefit h3 { margin-bottom: 12px; }
  .story-process > li { padding: 28px 25px; }
  .story-process h3 { font-size: 25px; }
  .story-faq-layout { gap: 35px; }
  .story-visit-layout { gap: 35px; }
  .story-footer-main { grid-template-columns: 1fr 1fr; }
  .story-footer-contact { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
  .story-section { padding: 85px 0; }
  .story-shell { width: calc(100% - 36px); padding-inline: 0; }
  .story-heading { margin-bottom: 40px; }
  .story-heading h2, .story-faq .story-heading h2 { font-size: 40px; }
  .story-heading > p:not(.story-eyebrow) { font-size: 18px; line-height: 1.7; }
  .story-eyebrow { font-size: 11px; margin-bottom: 17px; }
  .story-button { width: 100%; min-height: 65px; font-size: 19px; padding: 18px 22px; }
  .story-benefits { grid-template-columns: 1fr; gap: 24px; }
  .story-benefit { grid-template-columns: 88px 1fr; padding: 28px 24px; gap: 9px 20px; border-radius: 24px; }
  .story-benefit > .story-art { width: 88px; height: 88px; }
  .story-benefit > span { font-size: 13px; }
  .story-benefit h3 { font-size: 23px; margin-bottom: 5px; }
  .story-benefit p { font-size: 16px; line-height: 1.75; }
  .story-why-tail, .story-process-tail { flex-direction: column; align-items: stretch; gap: 22px; margin-top: 35px; }
  .story-why-tail > span { font-size: 18px; }
  .story-types-layout { grid-template-columns: 1fr; gap: 25px; }
  .story-watch-hero { padding: 35px 25px; }
  .story-watch-hero > img { height: 300px; margin-bottom: 22px; }
  .story-watch-hero p { font-size: 21px; }
  .story-type-list > article { gap: 16px; padding: 22px 0; }
  .story-type-list .story-art { width: 62px; height: 62px; }
  .story-type-list h3 { font-size: 23px; }
  .story-type-list strong { font-size: 16px; }
  .story-type-list p { font-size: 15px; }
  .story-type-list > article > span { display: none; }
  .story-process { grid-template-columns: 1fr; gap: 28px; }
  .story-process > li { padding: 30px; }
  .story-process .story-art { width: 145px; height: 145px; margin: 15px auto 24px; }
  .story-process h3 { font-size: 29px; }
  .story-process-tail p { font-size: 17px; margin: 0; }
  .story-faq-layout { grid-template-columns: 1fr; gap: 35px; }
  .story-question-art { margin: 25px 0 20px; }
  .story-faq-list summary { padding: 23px 19px; font-size: 19px; gap: 10px; }
  .story-answer { padding: 0 19px 24px; gap: 10px; }
  .story-answer p { font-size: 17px; }
  .story-direction-tabs { gap: 10px; }
  .story-direction-tabs button { flex: 1; font-size: 17px; padding: 16px 12px; }
  .story-visit-layout { grid-template-columns: 1fr; gap: 35px; }
  .story-visit-panel { padding: 10px 5px 22px; }
  .story-visit-panel > span { font-size: 12px; }
  .story-visit-copy h3 { font-size: 31px; }
  .story-visit-copy address { font-size: 22px; }
  .story-map-links a { flex: 1; justify-content: center; font-size: 16px; padding: 15px 9px; }
  .story-footer { padding-top: 70px; }
  .story-footer-lead { flex-direction: column; align-items: stretch; padding-bottom: 40px; }
  .story-footer-lead h2 { font-size: 35px; }
  .story-footer-lead p { font-size: 17px; }
  .story-footer-main { grid-template-columns: 1fr; gap: 35px; padding: 40px 0; }
  .story-footer-main nav { gap: 20px; }
  .story-footer-contact { grid-column: auto; }
  .story-footer-bottom { flex-direction: column; gap: 20px; font-size: 12px; }
}
@media (max-width: 360px) {
  .story-shell { width: calc(100% - 32px); }
  .story-heading h2, .story-faq .story-heading h2 { font-size: 35px; }
  .story-benefit { grid-template-columns: 65px 1fr; padding: 25px 20px; column-gap: 15px; }
  .story-benefit > .story-art { width: 65px; height: 65px; }
  .story-benefit h3 { font-size: 21px; }
  .story-faq-list summary { font-size: 18px; }
  .story-question-art .story-art { width: 140px; height: 140px; }
  .story-question-art > span { width: 82px; height: 96px; font-size: 55px; }
  .story-question-art > b { font-size: 50px; }
}

.story-small-title { font-size: 24px; margin: 0; }
.story-visit-panel { padding: 0; overflow: hidden; }
#story-location-map { display: block; width: 100%; height: 460px; border: 0; }
.footer-sale-label { font-size: 28px; letter-spacing: .06em; }
@media (max-width: 760px) { #story-location-map { height: 360px; } }

.story-section { padding-block: 110px; }
.story-shell { width: min(1280px, 100%); }
.story-why { background: #f6f1e8; }
.story-why-layout { display: grid; grid-template-columns: 1.05fr 1fr; gap: 65px; align-items: center; }
.story-why-photo { position: relative; margin: 0; min-height: 640px; border-radius: 38px; overflow: hidden; background: #e1e6e9; }
.story-why-photo img { width: 100%; height: 640px; object-fit: cover; object-position: 78% center; }
.story-why-photo figcaption { position: absolute; inset: 0; display: flex; align-items: flex-end; padding: 40px; background: linear-gradient(transparent 45%, #071b37c9); color: white; font-size: 40px; line-height: 1.3; font-weight: 700; letter-spacing: -.04em; }
.story-benefits { display: flex; flex-direction: column; gap: 0; }
.story-benefit { display: grid; grid-template-columns: 94px minmax(0, 1fr); gap: 6px 24px; padding: 26px 0; border: 0; border-bottom: 1px solid #d9d2c6; border-radius: 0; box-shadow: none; background: transparent; }
.story-benefit > .story-art { grid-row: 1 / 4; width: 94px; height: 94px; margin: auto; }
.story-benefit > span { margin: 0; font-size: 16px; }
.story-benefit h3 { margin: 0; font-size: 29px; }
.story-benefit p { font-size: 18px; }
.story-types { background: radial-gradient(ellipse at 5% 80%, #274d85, transparent 60%), #0b2450; color: white; }
.story-types-layout { grid-template-columns: 1fr 1.05fr; gap: 65px; }
.story-watch-hero { padding: 36px; background: #f1eee7; }
.story-watch-hero > img { height: 540px; }
.story-watch-hero p { font-size: 30px; }
.story-type-list > article { border-color: #ffffff2b; }
.story-type-list h3 { font-size: 30px; }
.story-type-list strong, .story-type-list p, .story-types .story-footnote { color: #c0cee6; }
.story-type-list .story-art { width: 88px; height: 88px; }
.story-guide { background: #e9edf5; color: #152a4b; }
.story-process { gap: 0; }
.story-process > li { background: transparent; border-radius: 0; box-shadow: none; padding: 24px 42px; border-right: 1px solid #bdcbe0; }
.story-process > li:first-child { padding-left: 0; }
.story-process > li:last-child { padding-right: 0; border-right: 0; }
.story-process .story-art { width: 190px; height: 190px; }
.story-process h3 { font-size: 32px; }
.story-process-tail p { color: #61718a; }
.story-guide .story-button { background: #103d91; color: white; }
.story-faq { background: radial-gradient(ellipse at 0% 25%, #e0d5c2, transparent 65%), #f7f3eb; }
.story-location { background: #e9eff7; }
.story-faq > .story-shell, .story-location > .story-shell, .story-footer > .story-shell { width: min(1560px,100%); padding-inline: 60px; }
.story-faq { padding-block: 100px; background: linear-gradient(125deg,#edf2fc,#f7f9ff 65%); }
.story-faq-layout { grid-template-columns: .7fr 1.3fr; gap: 70px; }
.story-faq .story-heading h2 { font-size: clamp(44px,4.8vw,70px); margin-top: 22px; }
.story-faq .story-heading { position: sticky; top: 45px; }
.story-question-art { margin-block: 25px; }
.story-text-link { display: inline-block; font-size: 19px; font-weight: 650; margin-top: 28px; color: #103d91; }
.story-faq-list { gap: 0; border-top: 2px solid #103d91; }
.story-faq-list details { background: transparent; border: 0; border-bottom: 1px solid #cad5e6; border-radius: 0; }
.story-faq-list details[open] { background: #ffffff8c; }
.story-faq-list summary { padding: 30px 22px; font-size: 26px; gap: 20px; }
.story-faq-list summary .story-faq-category { flex-shrink: 0; align-self: center; font-size: 15px; padding: 6px 10px; color: #103d91; background: #e1eaff; border-radius: 7px; }
.story-faq-list summary .story-faq-question { color: #152a4b; }
.story-answer { padding: 0 25px 30px; gap: 18px; }
.story-answer p { font-size: 21px; }
.story-location { background: #fff; padding-block: 100px; }
.story-location-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 35px; margin-bottom: 38px; }
.story-location-head h2 { font-size: clamp(44px,4.5vw,64px); line-height: 1.25; letter-spacing: -.04em; margin: 20px 0 0; }
.story-location-head .story-direction-tabs { margin: 0; flex-shrink: 0; }
.story-location .story-visit-panel { border-radius: 26px; border: 1px solid #d7e1ee; }
.story-location #story-location-map { height: 560px; }
.story-location .story-visit-layout { grid-template-columns: 1.1fr 1fr; align-items: start; gap: 70px; margin-top: 48px; }
.story-visit-hours { padding-left: 50px; border-left: 1px solid #d7e1ee; }
.story-visit-copy h3, .story-visit-hours h3 { font-size: 36px; margin: 18px 0; letter-spacing: -.035em; }
.story-visit-copy address { font-size: 28px; }
.story-visit-copy > p, .story-visit-hours > p { font-size: 20px; color: #637087; line-height: 1.8; }
.story-visit-phone { font-size: 36px; }
.story-footer { background: #071b3d; padding: 85px 0 40px; }
.story-footer-lead { padding-bottom: 55px; }
.story-footer-lead .footer-sale-label { display: block; color: #a9c5ff; font-size: 15px; margin-bottom: 22px; }
.story-footer-lead h2 { font-size: clamp(40px,4.5vw,64px); }
.story-footer .story-button { font-size: 24px; min-height: 82px; }
.story-footer-main { grid-template-columns: 1.1fr .75fr 1.2fr; gap: 45px; padding-block: 55px; }
.story-footer-brand > strong { font-size: 40px; }
.story-footer-brand > p { max-width: 370px; font-size: 19px; }
.story-footer-main nav { font-size: 20px; gap: 24px 15px; }
.story-footer-contact > span { display: block; color: #a9bbdd; font-size: 17px; margin-bottom: 16px; }
.story-footer-contact > a { display: block; font-size: 18px; margin-top: 15px; color: #c8d6ef; overflow-wrap: anywhere; }
.story-footer-contact > a[href^="tel:"] { font-size: clamp(27px,2.6vw,38px); font-weight: 700; color: white; margin: 0; }
.story-footer-contact > a:last-child { font-size: 18px; }
.story-footer-bottom { font-size: 17px; color: #bbcbe3; }
.story-business { display: flex; flex-wrap: wrap; gap: 12px 28px; margin: 0; max-width: 930px; }
.story-business > div { display: flex; gap: 12px; }
.story-business dt { color: #859dbf; }
.story-business dd { margin: 0; }
.story-footer-bottom > small { font-size: 14px; }
@media (max-width: 1050px) {
  .story-faq > .story-shell, .story-location > .story-shell, .story-footer > .story-shell { padding-inline: 32px; }
  .story-faq-layout { gap: 35px; }
  .story-faq-list summary { font-size: 22px; padding-inline: 15px; }
  .story-footer-main { grid-template-columns: 1fr 1fr; }
  .story-footer-contact { grid-column: 1 / -1; }
  .story-location-head { align-items: start; flex-direction: column; }
}
@media (max-width: 760px) {
  .story-faq > .story-shell, .story-location > .story-shell, .story-footer > .story-shell { width: 100%; padding-inline: 22px; }
  .story-faq, .story-location { padding-block: 65px; }
  .story-faq-layout { grid-template-columns: minmax(0,1fr); gap: 35px; }
  .story-faq .story-heading { position: static; }
  .story-faq .story-heading h2, .story-location-head h2 { font-size: 44px; }
  .story-faq-list summary { font-size: 21px; padding: 24px 4px; gap: 10px; }
  .story-faq-list summary .story-faq-category { font-size: 12px; padding: 5px 7px; }
  .story-answer { padding: 0 10px 25px; gap: 10px; }
  .story-answer p { font-size: 18px; }
  .story-location-head .story-direction-tabs { width: 100%; }
  .story-direction-tabs button { font-size: 15px; padding-inline: 8px; }
  .story-location #story-location-map { height: 380px; }
  .story-location .story-visit-layout { grid-template-columns: minmax(0,1fr); gap: 32px; margin-top: 35px; }
  .story-visit-copy h3, .story-visit-hours h3 { font-size: 28px; }
  .story-visit-copy address { font-size: 23px; }
  .story-visit-copy > p, .story-visit-hours > p { font-size: 18px; }
  .story-visit-hours { border-left: 0; border-top: 1px solid #d7e1ee; padding: 28px 0 0; }
  .story-visit-phone { font-size: 31px; }
  .story-footer-main { grid-template-columns: minmax(0,1fr); gap: 35px; }
  .story-footer-contact { grid-column: auto; }
  .story-footer .story-button { font-size: 20px; min-height: 72px; }
  .story-footer-main nav { font-size: 19px; }
  .story-footer-bottom { font-size: 15px; }
  .story-business { flex-direction: column; gap: 12px; }
  .story-business > div { flex-wrap: wrap; gap: 4px 12px; }
}
@media (max-width: 1050px) {
  .story-why-layout, .story-types-layout { gap: 35px; }
  .story-benefit { grid-template-columns: 70px minmax(0,1fr); gap: 6px 18px; }
  .story-benefit > .story-art { width: 70px; height: 70px; }
  .story-benefit h3 { font-size: 25px; }
  .story-why-photo figcaption { padding: 30px; font-size: 33px; }
  .story-process > li { padding-inline: 25px; }
  .story-process h3 { font-size: 28px; }
}
@media (max-width: 760px) {
  .story-section { padding-block: 70px; }
  .story-why-layout, .story-types-layout { grid-template-columns: 1fr; }
  .story-why-photo { min-height: 400px; }
  .story-why-photo img { height: 400px; }
  .story-why-photo figcaption { font-size: 34px; }
  .story-benefit { padding-block: 24px; }
  .story-benefit p { font-size: 17px; }
  .story-watch-hero { padding: 25px; }
  .story-watch-hero > img { height: 400px; }
  .story-type-list h3 { font-size: 25px; }
  .story-type-list .story-art { width: 72px; height: 72px; }
  .story-process > li, .story-process > li:first-child, .story-process > li:last-child { border-right: 0; border-bottom: 1px solid #bdcbe0; padding: 25px 0 35px; }
  .story-process > li:last-child { border-bottom: 0; }
  .story-process .story-art { width: 180px; height: 180px; }
}
