:root {
  --blue: #075579;
  --blue-deep: #073b57;
  --blue-bright: #075fb7;
  --red: #a9002b;
  --gold: #a99d89;
  --ice: #eef7f9;
  --cream: #fbf8f2;
  --ink: #132f3e;
  --muted: #5b6e77;
  --white: #fff;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 88px; font-size: 18px; }
body { margin: 0; color: var(--ink); background: white; font: 1.08rem/1.72 "Open Sans", Arial, sans-serif; }
a { color: inherit; }
h1, h2, h3, h4, p { overflow-wrap: break-word; }
h1, h2 { font-family: "Open Sans", Arial, sans-serif; letter-spacing: -.025em; }
h2 { margin: 0; color: var(--blue-deep); font-size: clamp(2rem, 3vw, 3rem); line-height: 1.18; font-weight: 400; }
.eyebrow { margin: 0 0 14px; color: var(--blue); font-size: .9rem; font-weight: 700; letter-spacing: .15em; line-height: 1.35; text-transform: uppercase; }

.site-header { position: sticky; top: 0; z-index: 20; min-height: 84px; padding: 8px clamp(24px, 3.3vw, 66px); display: flex; align-items: center; gap: 24px; background: rgba(255,255,255,.97); box-shadow: 0 5px 18px rgba(19,47,62,.08); }
.brand { width: clamp(230px, 17vw, 320px); height: 66px; display: block; overflow: hidden; text-decoration: none; }
.brand img { width: 100%; height: 100%; object-fit: contain; }
.desktop-nav { display: flex; align-items: center; gap: clamp(10px, 1.2vw, 22px); margin-left: auto; }
.desktop-nav a, .desktop-nav summary { text-decoration: none; color: #172d38; font-size: .95rem; font-weight: 600; white-space: nowrap; }
.desktop-nav a:hover, .desktop-nav summary:hover { color: var(--blue); }
.nav-main-link, .nav-group > summary { padding:14px 2px; }
.nav-group { position:relative; }
.nav-group > summary { display:flex; align-items:center; gap:7px; cursor:pointer; list-style:none; }
.nav-group > summary::-webkit-details-marker { display:none; }
.nav-group > summary::after { content:"⌄"; color:var(--blue); font-size:.9rem; line-height:1; transition:transform .2s ease; }
.nav-group[open] > summary::after { transform:rotate(180deg); }
.nav-submenu { position:absolute; left:-18px; top:51px; z-index:30; min-width:285px; padding:10px; border:1px solid #dce6e9; background:white; box-shadow:0 18px 38px rgba(19,47,62,.16); }
.nav-submenu-right { right:-18px; left:auto; min-width:225px; }
.nav-submenu a { display:block; padding:10px 12px; border-bottom:1px solid #edf1f2; font-size:.88rem; line-height:1.35; }
.nav-submenu a:last-child { border-bottom:0; }
.nav-submenu a:hover, .nav-submenu a:focus-visible { color:var(--blue); background:var(--ice); }
.header-button { padding: 13px 19px; color: white; background: var(--blue); text-decoration: none; font-weight: 700; white-space: nowrap; }
.mobile-menu { display: none; margin-left: auto; position: relative; }
.mobile-menu summary { padding: 9px 13px; border: 1px solid #cad7dc; cursor: pointer; font-weight: 700; list-style: none; }
.mobile-menu summary::-webkit-details-marker { display: none; }
.mobile-menu nav { position: absolute; right: 0; top: 51px; width:min(340px,calc(100vw - 32px)); max-height:calc(100vh - 90px); overflow-y:auto; padding: 12px; display: grid; background: white; box-shadow: 0 18px 35px rgba(19,47,62,.18); }
.mobile-menu nav a { padding: 10px; text-decoration: none; border-bottom: 1px solid #edf1f2; }
.mobile-main-link { color:var(--blue-deep); font-weight:700; }
.mobile-nav-group { border-bottom:1px solid #edf1f2; }
.mobile-nav-group > summary { position:relative; padding:12px 34px 12px 10px; color:var(--blue-deep); cursor:pointer; font-weight:700; list-style:none; }
.mobile-nav-group > summary::-webkit-details-marker { display:none; }
.mobile-nav-group > summary::after { content:"+"; position:absolute; right:10px; color:var(--blue); }
.mobile-nav-group[open] > summary::after { content:"–"; }
.mobile-nav-group > div { display:grid; padding:0 0 8px 14px; }
.mobile-nav-group > div a { color:var(--muted); font-size:.94rem; line-height:1.4; }

.hero { min-height: 760px; position: relative; display: flex; align-items: center; overflow: hidden; isolation: isolate; background: var(--blue-deep); }
.hero::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(4,35,51,.88) 0%,rgba(4,35,51,.72) 42%,rgba(4,35,51,.2) 72%,rgba(4,35,51,.08) 100%); }
.hero-copy { width: min(760px,100%); margin-left: clamp(24px,7vw,135px); padding: clamp(75px,9vw,145px) clamp(24px,4vw,72px) clamp(75px,9vw,145px) 0; position:relative; z-index:2; color:white; }
.hero h1 { margin: 0; max-width: 690px; color: white; font-size: clamp(3rem, 4.2vw, 4.2rem); line-height: 1.1; font-weight: 400; text-shadow:0 3px 22px rgba(0,0,0,.24); }
.hero h2 { margin: 24px 0; max-width: 610px; color: white; font: 600 clamp(1.3rem, 1.7vw, 1.75rem)/1.34 "Open Sans",Arial,sans-serif; letter-spacing: -.015em; }
.hero .eyebrow { color:#d5e9f0; }
.hero-copy > p:not(.eyebrow) { max-width: 620px; color: #f0f6f8; font-size: 1.08rem; }
.hero-image-wrap { position:absolute; inset:0; z-index:-2; overflow:hidden; background:#dfe9eb; }
.hero-slide { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; will-change: opacity, transform; }
.hero-slide-one { object-position: 50% 0%; animation: hero-one 21s ease-in-out infinite; }
.hero-slide-two { object-position: 50% 42%; animation: hero-two 21s ease-in-out infinite; }
.hero-slide-three { object-position: 54% 10%; animation: hero-three 21s ease-in-out infinite; }
.hero-image-wrap.is-paused .hero-slide { animation-play-state: paused; }
.hero-motion-toggle { margin-top:28px; padding: 10px 15px; border: 1px solid rgba(255,255,255,.78); border-radius: 999px; color: white; background: rgba(7,59,87,.62); backdrop-filter: blur(7px); font: 600 .9rem/1.2 "Open Sans",Arial,sans-serif; cursor: pointer; }
.hero-motion-toggle:hover, .hero-motion-toggle:focus-visible { background: var(--blue-deep); }
@keyframes hero-one { 0%,27% { opacity:1; transform:scale(1); } 33%,94% { opacity:0; transform:scale(1.045); } 100% { opacity:1; transform:scale(1); } }
@keyframes hero-two { 0%,27% { opacity:0; transform:scale(1.045); } 33%,60% { opacity:1; transform:scale(1); } 66%,100% { opacity:0; transform:scale(1.045); } }
@keyframes hero-three { 0%,60% { opacity:0; transform:scale(1.045); } 66%,94% { opacity:1; transform:scale(1); } 100% { opacity:0; transform:scale(1.045); } }
.hero-actions { margin: 32px 0 28px; display: flex; align-items: center; flex-wrap: wrap; gap: 25px; }
.button { display: inline-flex; align-items: center; justify-content: center; padding: 14px 22px; text-decoration: none; font-weight: 700; transition: transform .2s ease, filter .2s ease; }
.button:hover, .header-button:hover { filter: brightness(1.08); transform: translateY(-2px); }
.button-primary { color: var(--blue-deep); background: white; }
.text-link { padding-bottom: 3px; color: white; border-bottom: 1px solid rgba(255,255,255,.7); text-decoration: none; font-weight: 700; }
.hero-trust { margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 25px; list-style: none; color: white; font-size: .96rem; font-weight: 600; }
.hero-trust li::before { content: "✓"; margin-right: 8px; color: var(--red); font-weight: 700; }

.about { padding: 120px clamp(24px, 7vw, 130px); display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(50px, 10vw, 160px); background: var(--cream); }
.about-heading { max-width: 620px; }
.about-heading h2 { font-size: clamp(1.8rem,2.5vw,2.5rem); }
.keep-word { white-space: nowrap; }
.about-story { max-width: 720px; }
.about-story p { margin: 0 0 23px; }
.about-story .lead { color: var(--blue); font: 700 1.28rem/1.58 "Open Sans",Arial,sans-serif; }
blockquote { margin: 38px 0 0; padding: 26px 30px; border-left: 4px solid var(--red); color: var(--blue-deep); background: white; font: 500 clamp(1.25rem,2vw,1.7rem)/1.5 "Open Sans",Arial,sans-serif; }
.founder-signature { margin:18px 0 0; padding-left:34px; color:var(--blue-deep); }
.founder-signature strong, .founder-signature span { display:block; }
.founder-signature strong { font-size:1.08rem; }
.founder-signature span { color:var(--muted); font-size:1rem; }

.motivation-banner { min-height:620px; position:relative; display:flex; align-items:center; overflow:hidden; isolation:isolate; background:var(--blue-deep); }
.motivation-banner::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(4,35,51,.88) 0%,rgba(4,35,51,.65) 48%,rgba(4,35,51,.14) 100%); }
.motivation-banner > img { position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; object-position:55% 10%; }
.motivation-banner-copy { width:min(720px,100%); margin-left:clamp(24px,7vw,135px); padding:90px 24px 90px 0; color:white; }
.motivation-banner .eyebrow { color:#d5e9f0; }
.motivation-banner h2 { color:white; font-size:clamp(2.25rem,3.4vw,3.45rem); }
.motivation-banner-copy > p:not(.eyebrow) { max-width:650px; margin:24px 0 30px; color:#edf5f7; }

.offer { padding-top: 120px; background: white; }
.section-intro { max-width: 860px; margin: 0 auto 65px; padding: 0 24px; text-align: center; }
.section-intro > p:last-child { max-width: 730px; margin: 24px auto 0; color: var(--muted); }
.offer-overview { max-width: 1320px; margin: 0 auto 92px; padding: 38px; border-radius: 30px; background: linear-gradient(145deg,#f7fbfc,#eef7f9); box-shadow: 0 22px 55px rgba(19,47,62,.08); }
.offer-overview-heading { max-width: 780px; margin: 0 auto 34px; text-align: center; }
.offer-overview-heading h3 { margin: 0; color: var(--blue-deep); font: 400 clamp(1.75rem,2.4vw,2.4rem)/1.24 "Open Sans",Arial,sans-serif; }
.offer-overview-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.offer-overview-grid article { min-height: 285px; padding: 28px 24px; display: flex; flex-direction: column; border: 1px solid #d7e5e9; border-radius: 20px; background: white; box-shadow: 0 10px 28px rgba(19,47,62,.06); }
.overview-icon { width: 64px; height: 64px; display: grid; place-items: center; border-radius: 50%; color: var(--blue); background: var(--cream); font: 500 2.15rem/1 "Open Sans",Arial,sans-serif; box-shadow: inset 0 0 0 2px #d7ad65; }
.offer-overview-grid h4 { margin: 22px 0 8px; color: var(--blue-deep); font: 600 1.22rem/1.3 "Open Sans",Arial,sans-serif; }
.offer-overview-grid p { margin: 0 0 20px; color: var(--muted); font-size: 1rem; line-height: 1.55; }
.offer-overview-grid a { margin-top: auto; color: var(--blue); font-size: .96rem; font-weight: 700; text-underline-offset: 4px; }
.offer-overview-grid a span { color: #c68a2f; margin-left: 5px; }
.offer-quality { margin-top: 18px; padding: 18px 25px; display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 12px 34px; border-radius: 16px; text-align: center; }
.offer-quality { color: var(--blue-deep); border: 1px solid #efdbc2; background: #fffaf4; }
.offer-quality strong { font: 600 1.08rem/1.4 "Open Sans",Arial,sans-serif; }
.offer-quality span { max-width:900px; color: var(--muted); line-height:1.55; }
.offer-services-heading { max-width: 1220px; margin: 0 auto 34px; padding: 0 24px; }
.offer-services-heading h3 { max-width: 760px; margin: 0; color: var(--blue-deep); font: 400 clamp(1.75rem,2.4vw,2.4rem)/1.24 "Open Sans",Arial,sans-serif; }
.offer-grid { max-width: 1220px; margin: 0 auto 105px; padding: 0 24px; display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; align-items: stretch; }
.offer-card { overflow: hidden; border: 1px solid #dce6ea; border-radius: 18px; background: white; box-shadow: 0 16px 42px rgba(19,47,62,.08); }
.offer-card-image { display: block; width: 100%; aspect-ratio: 3/2; object-fit: cover; object-position: center; }
.offer-card-body { padding: 30px 29px 34px; }
.offer-card.highlighted { color: white; background: var(--blue); border-color: var(--blue); transform: translateY(-14px); }
.number { color: var(--red); font-size: .9rem; font-weight: 700; letter-spacing: .1em; }
.highlighted .number { color: #e7c9d1; }
.offer-card h3 { margin: 16px 0 10px; color: var(--blue-deep); font: 600 1.35rem/1.32 "Open Sans",Arial,sans-serif; }
.offer-card.highlighted h3 { color: white; }
.offer-card-body > p { color: var(--muted); }
.offer-card.highlighted > p { color: #dceaf0; }
.offer-card ul, .cost-card ul { margin: 24px 0 0; padding: 0; list-style: none; }
.offer-card li, .cost-card li { position: relative; margin: 11px 0; padding-left: 27px; line-height: 1.45; }
.offer-card li::before, .cost-card li::before { content: "✓"; position: absolute; left: 0; color: var(--red); font-weight: 700; }
.highlighted li::before { color: #fff; }

.care-panel { padding: 86px max(24px,calc((100vw - 1200px)/2)); display: grid; grid-template-columns: 80px 1fr 1fr; gap: clamp(30px,5vw,75px); align-items: center; color: white; background: var(--blue-deep); }
.care-symbol { width: 65px; height: 65px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.45); border-radius: 50%; color: #d9b6c0; font: 500 2.4rem/1 "Open Sans",Arial,sans-serif; }
.care-panel .eyebrow { color: #b5cfd9; }
.care-panel h3 { margin: 0; font: 400 clamp(1.9rem,2.5vw,2.5rem)/1.22 "Open Sans",Arial,sans-serif; }
.care-panel > div:last-child > p { margin-top: 0; color: #dce8ed; }
.care-panel small { display: block; color: #afc3cb; font-size: .9rem; line-height: 1.6; }

.orientation { padding: 110px clamp(24px,6vw,90px); background: var(--ice); }
.orientation-title { max-width: 780px; margin: 0 auto 55px; text-align: center; }
.orientation-title h3, .process-title h3 { margin: 0; color: var(--blue-deep); font: 400 clamp(1.9rem,2.6vw,2.6rem)/1.22 "Open Sans",Arial,sans-serif; }
.orientation-grid { max-width: 1180px; margin: 0 auto; display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.orientation-grid article { padding: 27px 25px; border-left: 3px solid var(--blue); background: white; }
.orientation-grid span { color: var(--red); font-size: .88rem; font-weight: 700; }
.orientation-grid h4 { margin: 14px 0 7px; color: var(--blue-deep); font: 600 1.18rem/1.35 "Open Sans",Arial,sans-serif; }
.orientation-grid p { margin: 0; color: var(--muted); font-size: 1rem; line-height: 1.6; }
.livein-feature { max-width: 1180px; margin: 62px auto 0; display: grid; grid-template-columns: minmax(0,.95fr) minmax(440px,1.05fr); overflow: hidden; border-radius: 24px; background: white; box-shadow: 0 18px 48px rgba(19,47,62,.1); }
.livein-feature-copy { padding: clamp(38px,5vw,68px); display: flex; flex-direction: column; justify-content: center; }
.livein-feature-copy h3 { margin: 0; color: var(--blue-deep); font: 400 clamp(1.8rem,2.5vw,2.5rem)/1.23 "Open Sans",Arial,sans-serif; }
.livein-feature-copy > p:not(.eyebrow) { margin: 20px 0 0; color: var(--muted); line-height: 1.7; }
.livein-feature-copy .button { align-self: flex-start; margin-top: 28px; color: white; background: var(--blue); }
.livein-feature-image { min-height: 430px; overflow: hidden; }
.livein-feature-image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }

.process { width:100%; margin:0; padding:110px max(28px,5vw); display:grid; grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr); gap:clamp(48px,6vw,110px); align-items:stretch; background:white; }
.process-content { min-width:0; }
.process-title { margin-bottom:38px; }
.process ol { margin: 0; padding: 0; list-style: none; }
.process li { padding: 26px 0; display: grid; grid-template-columns: 58px 1fr; gap: 20px; border-top: 1px solid #ccd9de; }
.process li:last-child { border-bottom: 1px solid #ccd9de; }
.process li > span { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 50%; color: white; background: var(--blue); font-family: "Open Sans",Arial,sans-serif; }
.process h4 { margin: 1px 0 5px; color: var(--blue-deep); font: 600 1.28rem/1.35 "Open Sans",Arial,sans-serif; }
.process li p { margin: 0; color: var(--muted); }
.process-image { min-height:0; aspect-ratio:4/3; margin:0; align-self:center; position:relative; overflow:hidden; border-radius:26px; background:#e6eeee; box-shadow:0 22px 52px rgba(19,47,62,.12); }
.process-image img { display:block; width:100%; height:100%; position:absolute; inset:0; object-fit:cover; object-position:center center; }
.process-image figcaption { position:absolute; left:24px; right:24px; bottom:24px; padding:17px 20px; color:white; border-radius:14px; background:rgba(7,59,87,.88); backdrop-filter:blur(6px); font-size:1rem; line-height:1.5; }
.temporary-care { padding: 80px max(24px,calc((100vw - 1160px)/2)); display: grid; grid-template-columns: .45fr 1.55fr; gap: clamp(35px,8vw,110px); background: var(--cream); }
.temporary-care h3 { margin: 0; color: var(--blue-deep); font: 400 clamp(1.9rem,2.5vw,2.5rem)/1.22 "Open Sans",Arial,sans-serif; }
.temporary-care div p { max-width: 760px; color: var(--muted); }

.why { padding: 120px clamp(24px,6vw,90px); background: white; }
.values-grid { max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: repeat(3,1fr); gap: 26px; }
.values-grid article { padding: 35px 28px; text-align: center; border-bottom: 4px solid var(--blue); background: var(--ice); }
.values-grid img { width: 130px; height: 130px; object-fit: contain; }
.values-grid h3 { margin: 23px 0 9px; color: var(--blue-deep); font: 600 1.25rem/1.35 "Open Sans",Arial,sans-serif; }
.values-grid p { margin: 0; color: var(--muted); font-size: 1rem; }

.partnerships { padding:120px clamp(24px,6vw,90px); color:white; background:linear-gradient(145deg,#073b57,#075579); }
.partnerships .eyebrow { color:#bfd7e0; }
.partnerships h2 { color:white; }
.partnerships-intro { max-width:1100px; margin:0 auto; display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(36px,7vw,100px); align-items:center; }
.partnerships-intro > p { margin:0; color:#dce9ee; }
.partnerships-cta { max-width:1100px; margin:52px auto 0; padding:38px 42px; display:flex; align-items:center; justify-content:space-between; gap:40px; border-top:5px solid var(--red); border-radius:20px; background:var(--cream); box-shadow:0 18px 45px rgba(1,24,36,.2); }
.partnerships-cta strong { color:var(--blue-deep); font-size:1.18rem; }
.partnerships-cta p { max-width:700px; margin:8px 0 0; color:var(--muted); line-height:1.6; }
.partnerships-cta .button { flex:0 0 auto; color:white; background:var(--red); }

.standards { padding:120px clamp(24px,6vw,90px); background:white; }
.standards-intro { max-width:1000px; }
.standards-card { max-width:1220px; margin:0 auto; display:grid; grid-template-columns:.72fr 1.28fr; border:1px solid #d5e1e5; border-radius:24px; overflow:hidden; box-shadow:0 20px 48px rgba(19,47,62,.08); }
.standards-logo { min-height:100%; padding:clamp(34px,5vw,70px); display:grid; place-items:center; background:var(--ice); }
.standards-logo img { display:block; width:min(100%,445px); height:auto; }
.standards-content { padding:clamp(36px,5vw,70px); border-left:5px solid var(--red); }
.standards-kicker { margin:0 0 11px; color:var(--red); font-size:.9rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.standards-content h3 { margin:0 0 22px; color:var(--blue-deep); font:500 clamp(1.55rem,2.1vw,2.05rem)/1.3 "Open Sans",Arial,sans-serif; }
.standards-content > p:not(.standards-kicker) { margin:0 0 17px; color:var(--muted); line-height:1.65; }
.standards-content ul { margin:28px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:10px; list-style:none; }
.standards-content li { padding:9px 14px; color:var(--blue-deep); border:1px solid #bfd4dc; border-radius:999px; background:var(--ice); font-size:.86rem; font-weight:700; line-height:1.35; }

.testimonials { padding:120px clamp(24px,6vw,90px); background:var(--cream); }
.testimonials-grid { max-width:1220px; margin:0 auto; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:20px; }
.testimonials-grid figure { grid-column:span 2; min-height:100%; margin:0; padding:34px 30px; display:flex; flex-direction:column; justify-content:space-between; border-radius:20px; background:white; box-shadow:0 14px 36px rgba(19,47,62,.07); }
.testimonials-grid figure:nth-child(4) { grid-column:2 / span 2; }
.testimonials-grid figure:nth-child(5) { grid-column:4 / span 2; }
.testimonials-grid blockquote { margin:0 0 25px; color:var(--blue-deep); font:400 1.05rem/1.65 "Open Sans",Arial,sans-serif; }
.testimonials-grid figcaption { padding-top:18px; border-top:1px solid #dce5e8; }
.testimonials-grid figcaption strong, .testimonials-grid figcaption span { display:block; }
.testimonials-grid figcaption strong { color:var(--red); font-size:.92rem; }
.testimonials-grid figcaption span { color:var(--muted); font-size:.9rem; }

.motivation-split { display:grid; grid-template-columns:1.1fr .9fr; min-height:640px; background:var(--ice); }
.motivation-split-image { min-height:640px; overflow:hidden; }
.motivation-split-image img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 46%; }
.motivation-split-copy { padding:clamp(70px,8vw,125px) clamp(34px,7vw,110px); display:flex; flex-direction:column; justify-content:center; }
.motivation-split-copy h2 { max-width:620px; }
.motivation-split-copy > p:not(.eyebrow) { max-width:650px; margin:26px 0 32px; color:var(--muted); }
.motivation-split-copy .button { align-self:flex-start; color:white; background:var(--blue); }

.team { padding: 115px clamp(24px,5.5vw,88px) 125px; background: var(--cream); }
.team-heading { max-width: 1240px; margin: 0 auto 62px; display: grid; grid-template-columns: 1.1fr .9fr; gap: clamp(40px,8vw,120px); align-items: end; }
.team-heading > p { margin: 0 0 6px; color: var(--muted); }
.team-grid { max-width: 1240px; margin: 0 auto; display: grid; grid-template-columns: repeat(4,1fr); gap: clamp(16px,2vw,28px); }
.team-grid > article { display: flex; flex-direction: column; }
.team-photo { position: relative; z-index: 1; width: 100%; aspect-ratio: 312 / 422; margin: 0 auto; overflow: hidden; background: #dce5e7; box-shadow: 0 14px 32px rgba(19,47,62,.11); }
.team-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.team-card { flex: 1; min-height: 170px; margin-top: -9px; padding: 33px 23px 24px; border-radius: 0 0 22px 22px; border-bottom: 4px solid var(--blue); background: white; box-shadow: 0 17px 35px rgba(19,47,62,.08); }
.team-card h3 { margin: 0 0 8px; color: var(--blue-deep); font: 600 clamp(1.1rem,1.45vw,1.4rem)/1.3 "Open Sans",Arial,sans-serif; }
.team-card p { margin: 0; color: var(--muted); font-size: 1rem; line-height: 1.5; }

.cosbena-house { padding: 115px clamp(24px,5vw,80px); background: white; }
.cosbena-house .section-intro { margin-bottom: 45px; }
.cosbena-house img { width: min(100%,1500px); height: auto; display: block; margin: 0 auto; border-radius: 28px; box-shadow: 0 24px 60px rgba(19,47,62,.10); }

.costs { padding: 120px clamp(24px,6vw,90px); background: #f4f0e8; }
.cost-grid { max-width: 1420px; margin: 0 auto; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; align-items: stretch; }
.cost-card { min-height: 520px; padding: clamp(32px,3.2vw,48px); position: relative; overflow: hidden; }
.cost-card h3 { margin: 0; font: 400 clamp(1.65rem,2vw,2.15rem)/1.22 "Open Sans",Arial,sans-serif; }
.cost-card h3.flexible-cost-title { font-size:clamp(1.22rem,1.55vw,1.72rem); }
.flexible-cost { color: var(--blue-deep); border: 1px solid #cbdde3; background: var(--ice); }
.home-cost { color: white; background: linear-gradient(145deg,#075579,#06384f); }
.comparison-cost { color: var(--blue-deep); border: 1px solid #ded9d0; background: white; }
.cost-card::after { content:""; position:absolute; width:220px; height:220px; right:-105px; top:-105px; border-radius:50%; background:rgba(255,255,255,.08); }
.flexible-cost::after { background:#dcecef; }
.comparison-cost::after { background:#eee8dd; }
.cost-label { margin: 0 0 16px; color: #cfdc8e; font-size: .9rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.flexible-cost .cost-label { color: var(--blue); }
.comparison-cost .cost-label, .comparison-cost .price span { color: #708f3b; }
.source { color: var(--muted); font-size: .92rem; }
.from { margin: 38px 0 0; }
.price { margin: 0; line-height: 1; }
.price strong { font-size: clamp(3.3rem,4vw,4.5rem); letter-spacing: -.055em; }
.price span { color: #cfdc8e; font-size: 1.25rem; font-weight: 700; }
.cost-card li { margin: 14px 0; }
.livein-plan { margin-top: 24px; padding: 20px 0 4px; border-top: 1px solid rgba(255,255,255,.28); }
.livein-plan h4 { margin: 0 0 10px; color: #d8e49b; font: 600 1.05rem/1.4 "Open Sans",Arial,sans-serif; }
.livein-plan p { margin: 8px 0; font-size: .91rem; line-height: 1.55; }
.livein-plan em { color: rgba(255,255,255,.82); }
.cost-comparison-title { margin:24px 0 0; font-size:.96rem; font-weight:700; line-height:1.45; }
.cost-comparison-list { position:relative; z-index:1; }
.home-cost .cost-comparison-list li::before { color:#d8e49b; }
.institutional-comparison { margin-top:24px; padding-top:20px; border-top:1px solid #ded9d0; }
.institutional-comparison .cost-comparison-title { margin-top:0; color:var(--blue-deep); }
.comparison-cost .cost-comparison-list li::before { content:"•"; color:#708f3b; }
.service-prices { margin: 28px 0 0; }
.service-prices > div { position: relative; z-index: 1; padding: 16px 0; display: grid; grid-template-columns: 1.15fr .85fr; gap: 18px; border-top: 1px solid #bfd4dc; }
.service-prices > div:last-child { border-bottom: 1px solid #bfd4dc; }
.service-prices dt, .service-prices dd { margin: 0; }
.service-prices dt { color: var(--blue-deep); font-weight: 700; line-height: 1.4; }
.service-prices dt span, .service-prices dd span { display: block; color: var(--muted); font-size: .9rem; font-weight: 500; line-height: 1.45; }
.service-prices dd { color: var(--blue); text-align: right; line-height: 1.35; }
.service-prices dd strong { display: block; font-size: 1.06rem; }
.home-benefits-wide { max-width: 1420px; margin: 22px auto 0; padding: clamp(30px,4vw,52px); border: 1px solid #cbdde3; background: var(--ice); }
.home-benefits-wide h3 { margin: 0 0 26px; color: var(--blue); font: 600 clamp(1.35rem,1.8vw,1.7rem)/1.35 "Open Sans",Arial,sans-serif; }
.home-benefits-grid { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px 30px; list-style: none; }
.home-benefits-grid li { position: relative; margin: 0; padding-left: 25px; color: var(--blue-deep); font-size: .94rem; line-height: 1.5; }
.home-benefits-grid li::before { content: "✓"; position: absolute; left: 0; top: 0; color: #789a3c; font-weight: 700; }
.home-benefits-wide .support-hint { margin: 26px 0 0; padding: 20px 0 0; border-top: 1px solid #cbdde3; color: var(--muted); font-size: .92rem; line-height: 1.55; }
.cost-conditions { max-width: 1080px; margin: 30px auto 0; padding: 16px 0 0; border-top: 1px solid #c8d2d5; color: #5f7077; }
.cost-conditions h3, .cost-conditions p { margin: 0; }
.cost-conditions h3 { color: var(--blue-deep); font: 600 .95rem/1.4 "Open Sans",Arial,sans-serif; }
.cost-conditions p { margin-top: 3px; font-size: .78rem; line-height: 1.45; }
.cost-conditions ul { margin: 7px 0 0; padding-left: 18px; display: flex; flex-wrap: wrap; gap: 4px 30px; }
.cost-conditions li { padding-left: 0; font-size: .78rem; line-height: 1.45; }
.cost-note { max-width: 1080px; margin: 28px auto 0; color: #5f7077; font-size: .92rem; line-height: 1.6; }

.financial-support { padding:120px clamp(24px,6vw,90px); background:white; }
.financial-support-intro { max-width:920px; }
.support-grid { max-width:1220px; margin:0 auto; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.support-card { min-height:100%; padding:clamp(28px,3vw,42px); position:relative; border:1px solid #d5e1e5; border-radius:22px; background:var(--ice); box-shadow:0 14px 36px rgba(19,47,62,.06); }
.support-card:nth-child(2), .support-card:nth-child(3) { background:var(--cream); border-color:#e2dbcf; }
.support-number { display:inline-grid; width:44px; height:44px; place-items:center; margin-bottom:20px; border-radius:50%; color:white; background:var(--blue); font-size:.82rem; font-weight:700; letter-spacing:.04em; }
.support-card:nth-child(2) .support-number, .support-card:nth-child(3) .support-number { background:var(--red); }
.support-card h3 { margin:0 0 15px; color:var(--blue-deep); font:600 clamp(1.3rem,1.8vw,1.65rem)/1.3 "Open Sans",Arial,sans-serif; }
.support-card p { margin:0 0 14px; color:var(--muted); line-height:1.62; }
.support-card .support-detail { padding-top:14px; border-top:1px solid rgba(7,85,121,.16); color:var(--ink); font-size:.95rem; }
.support-card a { display:inline-block; margin-top:5px; color:var(--blue); font-weight:700; text-decoration:none; border-bottom:1px solid rgba(7,85,121,.35); }
.support-card a:hover, .support-card a:focus-visible { color:var(--red); border-color:var(--red); }
.support-note { max-width:1220px; margin:26px auto 0; padding:28px clamp(24px,3.5vw,44px); display:flex; align-items:center; justify-content:space-between; gap:32px; color:white; border-radius:22px; background:linear-gradient(135deg,var(--blue-deep),var(--blue)); }
.support-note strong { color:#d8e49b; font-size:1.12rem; }
.support-note p { max-width:820px; margin:5px 0 0; color:#e4eef2; line-height:1.55; }
.support-note .button { flex:0 0 auto; color:var(--blue-deep); background:white; }
.support-status { max-width:1220px; margin:18px auto 0; color:#718087; font-size:.84rem; line-height:1.5; }

.faq { padding:120px clamp(24px,6vw,90px); background:white; }
.faq-list { max-width:1050px; margin:0 auto; display:grid; gap:16px; }
.faq-list details { border:1px solid #d5e1e5; border-radius:18px; background:var(--ice); overflow:hidden; }
.faq-list summary { padding:25px 72px 25px 28px; position:relative; color:var(--blue-deep); cursor:pointer; list-style:none; font:600 1.18rem/1.45 "Open Sans",Arial,sans-serif; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after { content:"+"; width:38px; height:38px; position:absolute; top:19px; right:22px; display:grid; place-items:center; border-radius:50%; color:white; background:var(--blue); font-size:1.35rem; }
.faq-list details[open] summary::after { content:"–"; }
.faq-list details p { margin:0; padding:0 72px 28px 28px; color:var(--muted); }

.contact { padding: 105px max(24px,calc((100vw - 1120px)/2)); display: grid; grid-template-columns: 1.1fr .9fr; gap: 58px clamp(45px,9vw,125px); align-items: center; color: white; background: var(--blue-deep); }
.contact h2 { color: white; }
.contact > div:first-child > p:last-child { max-width: 690px; color: #dbe8ed; }
.contact .eyebrow { color: #b8d2dd; }
.contact-card { padding: 38px; border: 1px solid rgba(255,255,255,.24); background: rgba(255,255,255,.06); }
.contact-card p { margin: 0 0 8px; color: #c7dbe3; font-size: .92rem; text-transform: uppercase; letter-spacing: .11em; }
.contact-card > a:not(.button) { display: block; color: white; text-decoration: none; font: 500 clamp(1.7rem,2.2vw,2.2rem)/1.28 "Open Sans",Arial,sans-serif; }
.contact-card > a.contact-email { margin-top: 10px; font-size: clamp(1.15rem,2vw,1.55rem); overflow-wrap: anywhere; }
.contact-card span { display: block; margin: 10px 0 25px; color: #bfd0d6; }
.button-light { color: var(--blue-deep); background: white; }
.contact-form { grid-column:1/-1; margin-top:10px; padding:clamp(28px,5vw,58px); color:var(--ink); border-radius:28px; background:var(--cream); box-shadow:0 24px 58px rgba(0,0,0,.16); }
.form-heading { margin-bottom:30px; }
.form-heading h3 { margin:0; color:var(--blue-deep); font:400 clamp(1.85rem,2.4vw,2.4rem)/1.22 "Open Sans",Arial,sans-serif; }
.form-heading > p:last-child { max-width:760px; margin:13px 0 0; color:var(--muted); }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.form-grid label { color:#5a4c42; font-size:.9rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.form-grid label span { color:var(--red); }
.form-wide { grid-column:1/-1; }
.form-grid input, .form-grid textarea { width:100%; margin-top:8px; padding:15px 17px; border:1px solid #d8d1c5; border-radius:14px; color:var(--ink); background:white; font:1rem/1.5 "Open Sans",Arial,sans-serif; outline:none; }
.form-grid input:focus, .form-grid textarea:focus { border-color:var(--blue); box-shadow:0 0 0 3px rgba(7,85,121,.13); }
.form-grid textarea { min-height:150px; resize:vertical; }
.form-question { margin:12px 0 0; padding:28px 0 4px; border:0; border-top:1px solid #d8d1c5; }
.form-question legend { width:100%; padding:0 0 20px; color:var(--red); font:400 clamp(1.35rem,2vw,1.7rem)/1.3 "Open Sans",Arial,sans-serif; }
.form-question legend span { color:var(--red); }
.form-options { display:grid; grid-template-columns:1fr 1fr; gap:13px 34px; }
.form-options label { display:flex; align-items:flex-start; gap:12px; padding:5px 0; color:var(--ink); font-size:1rem; font-weight:600; letter-spacing:0; line-height:1.45; text-transform:none; cursor:pointer; }
.form-options input { appearance:none; flex:0 0 22px; width:22px; height:22px; margin:1px 0 0; padding:0; border:1.5px solid #7b858a; border-radius:50%; }
.form-options input:checked { border:6px solid var(--blue); }
.form-options input:focus-visible { box-shadow:0 0 0 3px rgba(7,85,121,.18); }
.form-options label span { color:inherit; }
.form-message { margin-top:8px; }
.form-sensitive-note { margin:-8px 0 5px; color:var(--red); font-size:.9rem; line-height:1.55; }
.form-consent { display:flex; align-items:flex-start; gap:12px; padding-top:24px; border-top:1px solid #d8d1c5; color:var(--ink) !important; font-size:.95rem !important; font-weight:600 !important; letter-spacing:0 !important; line-height:1.55; text-transform:none !important; cursor:pointer; }
.form-consent input { flex:0 0 21px; width:21px; height:21px; margin:2px 0 0; padding:0; border-radius:4px; accent-color:var(--blue); }
.form-consent span { color:inherit !important; }
.form-consent a { color:var(--red); }
.form-submit { width:100%; margin-top:24px; border:0; border-radius:999px; color:white; background:var(--blue); font:700 1rem/1.3 "Open Sans",Arial,sans-serif; cursor:pointer; }
.form-status { min-height:1.5em; margin:10px 0 0; color:var(--blue); text-align:center; }

.location { padding:115px max(24px,calc((100vw - 1120px)/2)); background:white; }
.location-heading { max-width:850px; margin-bottom:58px; }
.location-heading > p:last-child { max-width:760px; margin:24px 0 0; color:var(--muted); }
.location-grid { display:grid; grid-template-columns:.95fr 1.05fr; gap:clamp(40px,8vw,110px); align-items:start; }
.location-contact { display:grid; gap:26px; }
.location-item { display:grid; grid-template-columns:54px 1fr; gap:18px; align-items:start; }
.location-item > span { width:52px; height:52px; display:grid; place-items:center; border-radius:50%; color:white; background:var(--blue); font-size:1.25rem; }
.location-item strong, .location-item a, .location-item address { display:block; }
.location-item strong { margin-bottom:4px; color:var(--blue-deep); font-size:1.12rem; }
.location-item address { color:var(--muted); font-style:normal; }
.location-item a { color:var(--blue); font-weight:600; overflow-wrap:anywhere; }
.location-route { width:max-content; margin-top:10px; border-radius:999px; color:white; background:var(--blue); }
.location-promises { padding:clamp(32px,4vw,50px); border-radius:26px; color:white; background:var(--blue-deep); box-shadow:0 22px 50px rgba(19,47,62,.14); }
.location-promises h3 { margin:0 0 27px; font:600 1.4rem/1.4 "Open Sans",Arial,sans-serif; }
.location-promises p { margin:0; padding:20px 0; color:#dce9ee; border-top:1px solid rgba(255,255,255,.18); }
.location-promises strong { display:block; margin-bottom:5px; color:white; }
.location-map { height:440px; margin-top:64px; overflow:hidden; border-radius:28px; background:#dce5e7; box-shadow:0 20px 48px rgba(19,47,62,.12); }
.location-map iframe { width:100%; height:100%; border:0; }

.career { padding:110px max(24px,calc((100vw - 1120px)/2)); background:#f4f0e8; }
.career-heading { margin-bottom:42px; }
.career-heading h2 { font-size:clamp(2rem,2.75vw,2.75rem); }
.career-panel { padding:32px 36px; border:1px solid #ddd9d1; border-radius:26px; background:rgba(255,255,255,.78); }
.career-empty { display:grid; grid-template-columns:48px 1fr; gap:18px; align-items:start; }
.career-icon { color:var(--red); font-size:2rem; line-height:1; }
.career-panel h3 { margin:0 0 12px; color:var(--blue-deep); font:600 1.25rem/1.4 "Open Sans",Arial,sans-serif; }
.career-panel p { margin:0; color:#675e56; }
.career-profile { margin-top:24px; }
.career-profile ul { margin:14px 0 0; padding-left:24px; color:#675e56; }
.career-profile li { margin:6px 0; }
.career-button { margin-top:28px; border-radius:999px; color:white; background:var(--blue); }

.legal { padding:100px max(24px,calc((100vw - 1120px)/2)); background:white; }
.legal-heading { max-width:760px; margin-bottom:42px; }
.legal-heading h2 { font-size:clamp(2rem,2.75vw,2.75rem); }
.legal-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; align-items:start; }
.legal details { border:1px solid #d8e2e6; border-radius:20px; background:var(--ice); overflow:hidden; }
.legal summary { padding:25px 28px; color:var(--blue-deep); cursor:pointer; list-style:none; font:600 1.22rem/1.4 "Open Sans",Arial,sans-serif; }
.legal summary::-webkit-details-marker { display:none; }
.legal summary::after { content:"+"; float:right; color:var(--red); font-size:1.5rem; line-height:1; }
.legal details[open] summary::after { content:"–"; }
.legal-content { padding:0 28px 30px; color:var(--muted); font-size:1rem; line-height:1.65; }
.legal-content h3 { margin:26px 0 7px; color:var(--blue-deep); font:600 1.05rem/1.4 "Open Sans",Arial,sans-serif; }
.legal-content p { margin:0 0 12px; }
.legal-content a { color:var(--blue); }
.legal-date { color:#708087; font-size:.94rem; }

footer { padding: 38px clamp(24px,5vw,75px); display: grid; grid-template-columns: 250px 1fr auto auto; gap: 30px; align-items: center; background: white; color: #66767b; font-size: .92rem; }
footer img { width: 230px; height: 64px; object-fit: contain; }
footer p { margin: 0; }
footer nav { display: flex; flex-wrap: wrap; gap: 18px; }
footer nav a { text-decoration: none; color: var(--blue-deep); }

/* Gut lesbare Mindestgrösse für alle bisher klein gesetzten Texte. */
.eyebrow,
.desktop-nav > a,
.desktop-nav > details > summary,
.hero-motion-toggle,
.hero-trust,
.offer-overview-grid a,
.number,
.care-panel small,
.orientation-grid span,
.cost-label,
.source,
.cost-note,
.contact-card p,
footer { font-size: 1rem; }

@media (max-width: 1200px) {
  .desktop-nav { display: none; }
  .mobile-menu { display: block; }
  .header-button { margin-left: auto; }
}

@media (max-width: 1100px) {
  .process { grid-template-columns: 1fr; }
  .process-image { width:100%; min-height:0; }
  .cost-grid { max-width:760px; grid-template-columns:1fr; }
  .cost-card { min-height:auto; }
  .home-benefits-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cost-conditions { max-width:760px; }
  .cost-conditions ul { display:block; }
  .testimonials-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .testimonials-grid figure, .testimonials-grid figure:nth-child(4), .testimonials-grid figure:nth-child(5) { grid-column:auto; }
}

@media (max-width: 820px) {
  body { font-size: 1.05rem; }
  .site-header { min-height: 76px; padding: 6px 18px; gap: 12px; }
  .brand { width: 200px; height: 61px; }
  .header-button { display: none; }
  .hero { min-height: 720px; }
  .hero::after { background:linear-gradient(90deg,rgba(4,35,51,.82),rgba(4,35,51,.42)); }
  .hero-copy { width:100%; margin-left:0; padding:80px 24px; }
  .hero-slide-one { content:url("assets/cosbena-neu-naehe-mobile-neutral-v2.png"); object-position:50% 0%; }
  .hero-slide-two { object-position: 50% 40%; }
  .hero-slide-three { object-position: 75% 10%; }
  .about, .process, .team-heading, .contact { grid-template-columns: 1fr; }
  .contact-form { grid-column:auto; }
  .about, .why, .partnerships, .standards, .testimonials, .team, .costs { padding-top: 85px; padding-bottom: 85px; }
  .financial-support, .faq, .location { padding-top:85px; padding-bottom:85px; }
  .offer { padding-top: 85px; }
  .offer-grid, .orientation-grid, .values-grid, .cost-grid { grid-template-columns: 1fr; }
  .livein-feature { grid-template-columns: 1fr; }
  .livein-feature-image { min-height: 390px; order: -1; }
  .home-benefits-grid { grid-template-columns: 1fr; }
  .offer-overview { margin-left: 20px; margin-right: 20px; padding: 28px 20px; }
  .offer-overview-grid { grid-template-columns: repeat(2,1fr); }
  .offer-card.highlighted { transform: none; }
  .care-panel { grid-template-columns: 60px 1fr; }
  .care-panel > div:last-child { grid-column: 1/-1; }
  .process { gap: 35px; padding-left:24px; padding-right:24px; }
  .process-image { min-height:0; }
  .temporary-care { grid-template-columns: 1fr; gap: 20px; }
  .team-grid { grid-template-columns: repeat(2,1fr); gap: 28px 18px; }
  .motivation-banner { min-height:590px; }
  .motivation-banner > img { object-position:55% 8%; }
  .motivation-banner::after { background:linear-gradient(90deg,rgba(4,35,51,.88),rgba(4,35,51,.5)); }
  .motivation-banner-copy { margin-left:0; padding:80px 24px; }
  .motivation-split { grid-template-columns:1fr; }
  .motivation-split-image { min-height:520px; }
  .motivation-split-image img { object-fit:contain; object-position:center; background:#dce9ed; }
  .location-grid { grid-template-columns:1fr; }
  .location-map { height:380px; margin-top:50px; }
  .cosbena-house { padding-top: 85px; padding-bottom: 85px; }
  .partnerships-intro { grid-template-columns:1fr; align-items:start; }
  .partnerships-cta { align-items:flex-start; flex-direction:column; }
  .standards-card { grid-template-columns:1fr; }
  .standards-logo { min-height:230px; }
  .standards-content { border-top:5px solid var(--red); border-left:0; }
  .support-grid { grid-template-columns:1fr; }
  .support-note { align-items:flex-start; flex-direction:column; }
  footer { grid-template-columns: 1fr; text-align: center; }
  footer img { margin: 0 auto; }
  footer nav { justify-content: center; }
}

@media (max-width: 500px) {
  .brand { width: 175px; }
  .hero h1 { font-size: 3rem; }
  .hero { min-height: 690px; }
  .hero-actions { align-items: flex-start; flex-direction: column; }
  .care-panel { grid-template-columns: 1fr; }
  .process li { grid-template-columns: 44px 1fr; gap: 13px; }
  .process li > span { width: 40px; height: 40px; }
  .team-grid { grid-template-columns: 1fr; gap: 34px; }
  .testimonials-grid { grid-template-columns:1fr; }
  .partnerships-cta { padding:30px 24px; }
  .offer-overview-grid { grid-template-columns: 1fr; }
  .offer-overview-grid article { min-height: auto; }
  .offer-quality { align-items: flex-start; flex-direction: column; }
  .form-grid { grid-template-columns:1fr; }
  .form-wide { grid-column:auto; }
  .form-options { grid-template-columns:1fr; }
  .career { padding-top:80px; padding-bottom:80px; }
  .career-empty { grid-template-columns:1fr; }
  .legal-grid { grid-template-columns:1fr; }
  .process-image { min-height:0; }
  .livein-feature-copy { padding: 38px 24px 44px; }
  .livein-feature-image { min-height: 300px; }
  .team-photo { width: min(82%,290px); }
  .team-card { width: min(92%,330px); min-height: auto; margin: -9px auto 0; }
  .cost-card { min-height: auto; padding: 34px 24px; }
  .home-benefits-wide { padding: 28px 22px; }
  .price strong { font-size: 4rem; }
  .service-prices > div { grid-template-columns: 1fr; gap: 7px; }
  .service-prices dd { text-align: left; }
  .contact-card { padding: 28px 22px; }
  .motivation-banner { min-height:560px; }
  .motivation-banner > img { object-position:58% center; }
  .motivation-split-image { min-height:430px; }
  .motivation-split-copy { padding:65px 24px; }
  .faq-list summary { padding:22px 62px 22px 20px; }
  .faq-list summary::after { right:16px; }
  .faq-list details p { padding:0 20px 24px; }
  .location-map { height:330px; border-radius:20px; }
  .location-promises { padding:28px 22px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  * { transition: none !important; }
  .hero-slide { animation: none !important; }
  .hero-slide-two { display: none; }
  .hero-slide-three { display: none; }
  .hero-motion-toggle { display: none; }
}
