/* Refined subpages. Homepage styling is intentionally isolated. */
.site-page { --sky:#00b8f1; --sky-dark:#0086b1; --graphite:#26343f; --muted:#63717c; --ink-soft:#63717c; --lime:#00b8f1; --page: min(1240px, calc(100vw - 48px)); }
.site-page .page-main { overflow: clip; }
.site-page .page-main h1 { font-size: clamp(2.8rem, 5vw, 4.8rem); line-height: 1.06; letter-spacing: -.055em; text-wrap: balance; }
.site-page .page-main h2 { font-size: clamp(2rem, 3.5vw, 3.35rem); line-height: 1.12; letter-spacing: -.045em; text-wrap: balance; }
.site-page .page-main h3 { line-height: 1.25; }
.site-page .page-main .section { padding: 88px 0; }
.site-page .page-main .eyebrow { font-size: .78rem; letter-spacing: .12em; }
.site-page .page-main .lead { font-size: 1.1rem; line-height: 1.75; }
.site-page .page-hero { min-height: 0; gap: 64px; align-items: center; grid-template-columns: 1fr 1fr; padding: 155px max(24px, calc((100vw - 1240px) / 2)) 76px; background-color: #0d1c25; background-image: linear-gradient(rgba(0,184,241,.035) 1px, transparent 1px), linear-gradient(90deg,rgba(0,184,241,.035) 1px,transparent 1px), radial-gradient(ellipse at 90% 80%, #103e50, transparent 65%); background-size: 44px 44px,44px 44px,auto; color: white; }
.site-page .page-hero-copy { display:block; padding: 14px 0; min-width: 0; }
.site-page .page-hero-copy h1 { margin: 20px 0 24px; }
.site-page .page-hero-copy .eyebrow { color: #70ddff; }
.site-page .page-hero-copy .lead { color: #c0d0d8; margin-bottom: 28px; }
.site-page .page-hero-copy .button { width: fit-content; }
.site-page .page-hero-media { margin: 0; height: 480px; min-width:0; border-radius: 24px; background: #20333f; }
.site-page .page-hero-media img { width:100%;height:100%;object-fit:cover; }
.site-page .image-caption { position: absolute; bottom: 18px; left: 18px; right:18px; width:fit-content; max-width:calc(100% - 36px); padding: 9px 14px; background: rgba(12,26,35,.84); color:white; backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,.22); border-radius: 30px; font-size:.75rem; }
.site-page .marquee { padding: 20px 24px; background:#eaf6fa; border-bottom:1px solid #dceaf0; }
.site-page .marquee-track { width: min(1240px,100%); margin:auto; justify-content: space-between; animation:none; gap:22px; }
.site-page .marquee-track span { color:#33515e; font-family:var(--sans); font-size:.84rem; font-weight:700; white-space:normal; }
.site-page .marquee-track span::after { content:none; }
.site-page .marquee-track span:nth-child(n+5) { display:none; }
.site-page .editorial-grid { grid-template-columns: .65fr 1.35fr; gap: 70px; }
.site-page .editorial-copy p, .site-page .story-copy p { color:#536570; font-size:1.02rem; line-height:1.8; }
.site-page .section-dark .editorial-copy p { color:#b8c7cf; }
.site-page .number-cards { border-top:1px solid #d7e1e5; border-bottom:1px solid #d7e1e5; gap:0; margin-top:48px; }
.site-page .number-card { min-height:150px; gap:24px; padding:26px 30px; border:0; border-right:1px solid #d7e1e5; border-radius:0; background:transparent; }
.site-page .number-card:first-child { padding-left:0; }
.site-page .number-card:last-child { border-right:0; }
.site-page .number-card strong { font-size:clamp(2.3rem,4vw,3.6rem); color:#087fa6; }
.site-page .number-card span { max-width:240px; font-size:.875rem; }
.site-page .story-row { gap:70px; }
.site-page .story-row + .story-row { margin-top:80px; }
.site-page .story-media { min-height:0; aspect-ratio: 5/4; }
.site-page .story-media img { min-height:0; width:100%;height:100%; }
.site-page .story-copy p { margin-bottom:20px; }
.site-page .step { min-height:200px; padding:26px; }
.site-page .step small { font-size:.875rem; color:#70ddff; }
.site-page .step h3 { margin:30px 0 14px; font-size:1.3rem; }
.site-page .step p { font-size:.95rem; color:#bfccd3; }
.site-page .feature-item { grid-template-columns:40px .9fr 1.2fr; align-items:start; padding:28px 0; }
.site-page .feature-item > span { font-size:.875rem; color:#087fa6; }
.site-page .feature-item h3 { font-size:1.4rem; }
.site-page .feature-item p { font-size:1rem; line-height:1.75; }
.site-page .big-cta { min-height:390px; padding:80px 24px; }
.site-page .big-cta h2 { max-width:800px; margin:0 auto 24px; }
.site-page .big-cta .eyebrow { color:#70ddff; }
.site-page .big-cta .lead { color:#d1dce1; }
.site-page .button-ghost { color:#10171f; background:transparent; border:1px solid #b4c5cd; }
.site-page :is(.page-hero,.blog-hero,.section-dark) .button-ghost { color:white; border-color:#6c848f; }
.site-page .catalogue-hero { min-height:0; padding:166px 0 66px; background:radial-gradient(ellipse at 95% 70%,#0f4053,transparent 68%),#0d1c25; }
.site-page .catalogue-hero h1 em { font-style:normal; }
.site-page .catalogue-lead { margin-top:28px; gap:30px; }
.site-page .catalogue-lead p { font-size:1.05rem; max-width:720px; }
.site-page .catalogue-grid { gap:36px; }
.site-page .catalogue-card { min-height:410px; grid-template-columns:1.1fr .9fr; background:#f3f6f7; border:0; }
.site-page .catalogue-media { min-height:410px; }
.site-page .catalogue-copy { padding:40px; }
.site-page .catalogue-copy h2 { font-size:3rem; margin:8px 0 18px; }
.site-page .catalogue-copy .button { align-self:flex-start; }
.site-page .catalogue-stat small { font-size:.75rem; letter-spacing:0; text-transform:none; }
.site-page .catalogue-stat strong { font-size:1rem; }
.site-page .model-hero { min-height:680px; height:78svh; max-height:900px; padding:155px 0 58px; }
.site-page .model-hero-bg::after { background:linear-gradient(0deg,rgba(5,18,27,.9),rgba(5,18,27,.07) 75%); }
.site-page .model-hero h1 { font-size:clamp(4.5rem,9vw,8rem); line-height:1; }
.site-page .model-hero-bottom { margin-top:22px; }
.site-page .model-tagline { font-size:1.6rem; line-height:1.35; }
.site-page .model-summary { font-size:1rem; color:#e0e8ec; line-height:1.65; }
.site-page .spec-strip { background:#f0f6f8; border-bottom:1px solid #d7e3e8; }
.site-page .spec-cell { min-height:125px; gap:18px; padding:26px; border-color:#d7e3e8; }
.site-page .spec-cell small { font-size:.78rem; color:#57717e; letter-spacing:0; text-transform:none; }
.site-page .spec-cell strong { font-size:1.8rem; color:#10171f; }
.site-page .model-story { gap:70px; }
.site-page .model-story-copy p { font-size:1.05rem; line-height:1.8; }
.site-page .model-story-quote { font-size:1.5rem; color:#087fa6; }
.site-page .plan-grid { gap:32px; align-items:start; }
.site-page .room-panel { padding:36px; }
.site-page .price-panel { top:110px; box-shadow:0 16px 50px rgba(18,43,56,.07); }
.site-page .price-option small,.site-page .price-option span,.site-page .price-note { font-size:.875rem; letter-spacing:0; text-transform:none; line-height:1.6; }
.site-page .price-option strong { font-size:clamp(1.8rem,2.6vw,2.55rem); }
.site-page .price-note { padding:22px 30px; }
.site-page .tech-row strong { font-size:1.2rem; }
.site-page .tech-row p { font-size:1rem; color:#bccbd4; }
.floorplan-preview { margin-bottom:38px; padding:22px; background:#f3f6f7; border-radius:20px; }
.floorplan-preview img { width:100%; max-height:520px; object-fit:contain; mix-blend-mode:multiply; }
.floorplan-preview figcaption { margin-top:14px; display:flex; justify-content:space-between; gap:16px; font-size:.875rem; color:#536570; }
.floorplan-preview a { color:#007ea5; font-weight:800; }
.site-page .blog-hero { min-height:0; padding:165px 0 75px; }
.site-page .blog-hero-grid { grid-template-columns:1.15fr .85fr; gap:70px; }
.site-page .blog-hero h1 { font-size:clamp(3rem,5.5vw,5rem); }
.site-page .blog-hero-side p { margin-top:20px; }
.site-page .blog-hero-plan { display:none; }
.site-page .blog-card.featured .blog-card-media { aspect-ratio:1.5; }
.site-page .blog-card.featured h2 { font-size:clamp(2rem,3.4vw,3rem); }
.site-page .blog-card h2 { font-size:clamp(1.5rem,2.4vw,2rem); line-height:1.2; }
.site-page .blog-category,.site-page .blog-read { font-size:.875rem; }
.site-page .blog-manifesto { padding:75px 0; }
.site-page .blog-manifesto-grid { grid-template-columns:.5fr 1.2fr .7fr; gap:36px; }
.site-page .blog-manifesto blockquote { font-size:2.2rem; line-height:1.2; }
.site-page .simple-article .article-hero h1 { font-size:clamp(2.5rem,4.6vw,4.6rem); line-height:1.12; }
.site-page .simple-article .article-body > h2 { font-size:clamp(1.8rem,3vw,2.65rem); }
.site-page .simple-article .article-back { margin-bottom:32px; font-size:.875rem; }
.site-page .article-author-copy small,.site-page .article-closing > a { font-size:.875rem; }
.site-page .tech-content-nav a { font-size:.875rem; }
.site-page .tech-prose p,.site-page .tech-chapter-copy p { line-height:1.85; }
.site-page .tech-metric span { font-size:.875rem; }
.site-page .tech-chapter-media img { max-height:600px; }
.site-page a:focus-visible,.site-page button:focus-visible { outline:3px solid #00a2d5; outline-offset:5px; }
.site-page .reveal { opacity:1; transform:none; }
@media(max-width:1000px){
 .site-page .page-hero { gap:34px; }
 .site-page .page-hero-media { height:420px; }
 .site-page .editorial-grid,.site-page .story-row,.site-page .model-story { gap:36px; }
 .site-page .steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .site-page .step { border-bottom:1px solid rgba(255,255,255,.15); }
 .site-page .catalogue-copy { padding:30px; }
 .site-page .blog-manifesto-grid { grid-template-columns:1fr 2fr; }
 .site-page .blog-manifesto-grid > p:last-child { grid-column:2; }
}
@media(max-width:760px){
 .site-page .page-main .section { padding:60px 0; }
 .site-page .page-main h1 { font-size:clamp(2.35rem,8.8vw,3.6rem); }
 .site-page .page-hero { grid-template-columns:1fr; gap:30px; padding:122px 20px 36px; }
 .site-page .page-hero-copy { padding:0; }
 .site-page .page-hero-media { height:auto; aspect-ratio:4/3; }
 .site-page .marquee-track { flex-wrap:wrap; justify-content:flex-start; gap:12px 24px; }
 .site-page .marquee-track span { font-size:.78rem; }
 .site-page .editorial-grid,.site-page .story-row,.site-page .model-story { grid-template-columns:1fr; gap:28px; }
 .site-page .story-row.reverse .story-media { order:0; }
 .site-page .story-row + .story-row { margin-top:56px; }
 .site-page .number-card { padding:20px 14px; min-height:140px; }
 .site-page .number-card strong { font-size:2rem; }
 .site-page .number-card span { font-size:.8125rem; }
 .site-page .feature-item { grid-template-columns:28px 1fr; gap:12px; }
 .site-page .feature-item p { grid-column:2; }
 .site-page .catalogue-hero { padding:132px 0 46px; }
 .site-page .catalogue-lead { align-items:flex-start; flex-direction:column; }
 .site-page .catalogue-card { grid-template-columns:1fr; }
 .site-page .catalogue-card:nth-child(even) .catalogue-media { order:0; }
 .site-page .catalogue-media { min-height:0; aspect-ratio:4/3; }
 .site-page .catalogue-copy { padding:26px; }
 .site-page .catalogue-copy h2 { font-size:2.5rem; }
 .site-page .model-hero { min-height:620px; height:78svh; }
 .site-page .model-hero h1 { font-size:4.5rem; }
 .site-page .model-hero-bottom { grid-template-columns:1fr; gap:18px; }
 .site-page .spec-strip-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .site-page .spec-cell { min-height:105px; padding:18px 12px; }
 .site-page .spec-cell strong { font-size:1.25rem; }
 .site-page .spec-cell small { font-size:.75rem; }
 .site-page .plan-grid { grid-template-columns:1fr; }
 .site-page .room-panel { padding:22px; }
 .site-page .price-panel { position:static; }
 .floorplan-preview { padding:12px; }
 .floorplan-preview figcaption { flex-direction:column; }
 .site-page .blog-hero { padding:132px 0 50px; }
 .site-page .blog-hero-grid,.site-page .blog-manifesto-grid { grid-template-columns:1fr; gap:28px; }
 .site-page .blog-manifesto-grid > p:last-child { grid-column:auto; }
 .site-page .blog-card.featured { grid-template-columns:1fr; gap:24px; }
 .site-page .blog-hero h1 { font-size:clamp(2.5rem,9vw,3.5rem); }
 .site-page .simple-article .article-hero h1 { font-size:clamp(2.3rem,8.4vw,3.4rem); }
 .site-page .article-cover img { min-height:0; height:auto; aspect-ratio:4/3; }
 .site-page .big-cta { min-height:340px; padding:56px 20px; }
}
@media(max-width:420px){.site-page .number-cards{grid-template-columns:1fr}.site-page .number-card{padding:20px 0;min-height:100px;border-right:0;border-bottom:1px solid #d7e1e5}.site-page .steps{grid-template-columns:1fr}.site-page .step{padding:24px 0;border-left:0}.site-page .step h3{margin-top:18px}}
/* Contact and guided quote share the same readable form language. */
.quote-page,.contact-page { background:#f2f6f8; }
.quote-layout { display:grid; grid-template-columns:.78fr 1.22fr; gap:64px; align-items:start; padding-top:150px; padding-bottom:100px; }
.quote-intro { position:sticky; top:125px; }
.site-page .quote-intro h1 { font-size:clamp(2.8rem,4vw,4.2rem); margin-bottom:24px; }
.quote-intro h1 span,.contact-intro h1 span { color:#008fbf; }
.quote-intro > p:not(.eyebrow) { max-width:430px; color:#536570; font-size:1.05rem; line-height:1.8; }
.quote-intro figure { margin:32px 0; }
.quote-intro figure img { border-radius:20px; width:100%;height:auto; }
.quote-intro figcaption { font-size:.8125rem; color:#647883; margin-top:12px; }
.quote-assistance { padding-top:24px; border-top:1px solid #d4e0e6; display:grid; gap:10px; }
.quote-assistance > span { color:#5c707c; font-size:.875rem; }
.quote-assistance > a { font-size:1.45rem; font-weight:700; }
.quote-assistance .quote-contact-link { font-size:.875rem; font-weight:500; color:#007da7; }
.quote-form-card { background:white; border:1px solid #dfE8ec; border-radius:28px; padding:38px; box-shadow:0 24px 70px rgba(28,52,65,.05); }
.quote-progress { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin:0 0 36px; padding:0 0 24px; list-style:none; border-bottom:1px solid #dce6eb; }
.quote-progress li { display:flex; align-items:center; gap:9px; color:#637883; font-size:.875rem; }
.quote-progress b { display:grid; place-items:center; width:32px; height:32px; border-radius:50%; background:#eef3f5; font-size:.75rem; }
.quote-progress [aria-current="step"] { color:#0b2839; font-weight:800; }
.quote-progress [aria-current="step"] b,.quote-progress .complete b { background:#0a92bc; color:white; }
.quote-form fieldset { border:0; padding:0; margin:0; min-width:0; }
.quote-step legend { font-size:1.65rem; font-weight:800; letter-spacing:-.035em; line-height:1.25; margin-bottom:12px; width:100%; }
.step-intro { color:#5d7280; font-size:.95rem; margin-bottom:26px; }
.house-choices { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:26px; }
.house-choice { position:relative; overflow:hidden; border:1px solid #d8e3e9; border-radius:14px; cursor:pointer; padding:5px; transition:border-color .2s,box-shadow .2s; }
.house-choice:has(input:checked) { border:2px solid #009fcd; padding:4px; box-shadow:0 0 0 3px #e7f7fb; background:#f5fcfe; }
.house-choice input { position:absolute; z-index:1; top:14px; right:14px; width:19px; height:19px; accent-color:#008eba; }
.house-choice:has(input:focus-visible) { outline:3px solid #00a2d5; outline-offset:3px; }
.house-choice img { width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; border-radius:10px; }
.house-choice > span { display:grid; gap:3px; padding:12px; }
.house-choice strong { font-size:.98rem; }
.house-choice small { color:#59717d; font-size:.75rem; }
.custom-choice { display:flex; align-items:center; background:#f2f7f9; }
.custom-choice > span { padding:20px 32px 20px 14px; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px 18px; }
.plot-fields { margin-top:20px; }
.site-page .quote-form .field,.site-page .contact-message .field { display:flex; flex-direction:column; gap:9px; min-width:0; }
.site-page .quote-form .field label,.site-page .contact-message .field label { color:#334c5a; font-size:.875rem; font-weight:700; letter-spacing:0; text-transform:none; }
.site-page :is(.quote-form,.contact-message) :is(input:not([type=checkbox]):not([type=radio]),textarea,select) { width:100%; min-width:0; min-height:52px; padding:13px 14px; border:1px solid #bbcdd6; border-radius:10px; background:#f9fbfc; color:#132c3a; font-size:1rem; outline:none; box-shadow:none; }
.site-page :is(.quote-form,.contact-message) :is(input,textarea,select):focus-visible { border-color:#008fbf; outline:3px solid #d9f3fa; outline-offset:1px; background:white; }
.site-page :is(.quote-form,.contact-message) :is(input,textarea)::placeholder { color:#7a8d98; opacity:1; }
.field-full { grid-column:1/-1; }
.form-tip { margin-top:26px; padding:18px 20px; border-radius:12px; border-left:3px solid #009ccc; background:#eef8fb; color:#456170; font-size:.875rem; }
.consent { display:flex; align-items:flex-start; gap:11px; margin-top:25px; font-size:.875rem; line-height:1.6; color:#536a77; }
.consent input { width:19px; height:19px; min-width:19px; margin-top:2px; accent-color:#008fbf; }
.consent a { color:#00769c; text-decoration:underline; text-underline-offset:3px; }
.email-explainer { margin:18px 0 0; color:#6a7f89; font-size:.8125rem; line-height:1.6; }
.quote-actions { display:flex; align-items:center; gap:20px; border-top:1px solid #dce6eb; padding-top:25px; margin-top:32px; }
.quote-actions [data-step-count] { margin-left:auto; color:#6c818c; font-size:.8125rem; }
.quote-back,.review-tools button { padding:8px 0; border:0; background:none; color:#315567; font-size:.875rem; cursor:pointer; }
.quote-back:disabled { visibility:hidden; }
[hidden] { display:none!important; }
.quote-review h2 { margin-bottom:20px; }
.quote-review > p:not(.eyebrow) { color:#58717f; font-size:.98rem; }
.quote-summary { margin:28px 0; display:grid; grid-template-columns:1fr 1.4fr; }
.quote-summary dt,.quote-summary dd { margin:0; padding:12px 0; border-bottom:1px solid #e2eaee; font-size:.875rem; overflow-wrap:anywhere; }
.quote-summary dt { color:#6a7e89; }
.quote-summary dd { color:#243f4e; font-weight:600; white-space:pre-wrap; }
.review-tools { display:flex; flex-wrap:wrap; gap:10px 20px; margin-top:18px; }
.form-status { margin-top:16px; font-size:.875rem; color:#096b8b; }
.contact-shell { display:grid; grid-template-columns:1fr 1fr; gap:76px; padding-top:165px; padding-bottom:88px; align-items:center; }
.site-page .contact-intro h1 { font-size:clamp(2.8rem,4.5vw,4.5rem); margin:5px 0 26px; }
.contact-intro > p:not(.eyebrow) { color:#5a707e; font-size:1.1rem; max-width:470px; }
.contact-direct { display:grid; gap:24px; margin:40px 0; }
.contact-direct a { font-size:clamp(1.4rem,2.4vw,2rem); letter-spacing:-.03em; }
.contact-direct small { display:block; color:#607986; font-size:.8125rem; margin-bottom:6px; letter-spacing:0; }
.contact-message { padding:36px; border:1px solid #dce6eb; border-radius:28px; background:white; box-shadow:0 20px 60px rgba(28,52,65,.04); }
.site-page .contact-message h2 { font-size:2rem; margin-bottom:28px; }
.site-page .contact-message .contact-form { padding:0; border:0; border-radius:0; box-shadow:none; background:transparent; gap:20px; }
.site-page .contact-message .contact-form .button { background:#101f29; color:white; font-size:.875rem; padding:0 20px; }
.contact-message .consent { margin-top:0; }
.contact-message .email-explainer { margin:0; }
.team-heading { max-width:750px; margin-bottom:40px; }
.team-grid { display:grid; grid-template-columns:1fr 1fr; gap:30px; }
.team-person { display:flex; align-items:center; gap:24px; padding:28px; border:1px solid #dce6eb; border-radius:22px; background:#f6f9fa; }
.team-person img { width:90px; height:110px; object-fit:cover; border-radius:14px; }
.team-person span { display:block; color:#5f7987; font-size:.8125rem; margin-bottom:7px; }
.site-page .team-person h3 { font-size:1.35rem; margin-bottom:10px; }
.team-person p { font-size:.95rem; color:#234a60; }
.team-person b { margin-left:auto; color:#008bb7; font-size:1.4rem; }
.service-reading { max-width:850px; }
.service-reading > section + section { margin-top:64px; padding-top:48px; border-top:1px solid #dbe5ea; }
.service-reading h2 { margin-bottom:26px; }
.service-reading p:not(.eyebrow) { font-size:1.08rem; line-height:1.85; color:#506978; margin-bottom:22px; }
.service-next { display:flex; align-items:center; justify-content:space-between; gap:24px; border-top:1px solid #dce6eb; margin-top:55px; padding-top:30px; }
.site-page .service-next h3 { font-size:1.4rem; }
.model-gallery { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:48px; }
.model-gallery figure { margin:0; }
.model-gallery img { width:100%; aspect-ratio:16/10; object-fit:cover; border-radius:20px; }
.model-gallery figcaption { margin-top:10px; font-size:.8125rem; color:#5e7784; }
@media(max-width:1050px){.quote-layout{gap:32px;grid-template-columns:.75fr 1.25fr}.quote-form-card{padding:28px}.contact-shell{gap:36px}.contact-message{padding:26px}.team-person{padding:22px;gap:18px}.team-person img{width:70px;height:90px}}
@media(max-width:800px){.quote-layout{grid-template-columns:1fr;padding-top:126px;padding-bottom:60px;gap:36px}.quote-intro{position:static}.quote-intro figure,.quote-assistance{display:none}.site-page .quote-intro h1{font-size:2.8rem}.quote-intro h1 br{display:initial}.quote-form-card{padding:25px}.contact-shell{grid-template-columns:1fr;padding-top:125px;gap:40px;padding-bottom:60px}.site-page .contact-intro h1{font-size:3rem}.team-grid{grid-template-columns:1fr}.quote-progress{gap:8px}.quote-progress li{font-size:.8125rem}.service-next{align-items:flex-start;flex-direction:column}}
@media(max-width:480px){.quote-form-card,.contact-message{padding:22px 18px;border-radius:20px}.form-grid,.contact-message .contact-form{grid-template-columns:1fr}.house-choice > span{padding:9px 5px}.house-choice small{font-size:.75rem}.house-choice img{aspect-ratio:4/3}.quote-progress li{gap:6px;font-size:.75rem}.quote-progress b{width:27px;height:27px}.quote-step legend{font-size:1.5rem}.quote-actions{gap:12px}.quote-actions .button{padding:0 17px;font-size:.8125rem}.team-person{padding:18px}.team-person img{width:64px;height:88px}.site-page .team-person h3{font-size:1.2rem}.model-gallery{grid-template-columns:1fr}.quote-summary{grid-template-columns:1fr}.quote-summary dt{border-bottom:0;padding-bottom:0}.quote-summary dd{padding-top:4px}}

.quote-form-card { scroll-margin-top:110px; }

.site-page .button { max-width:100%; white-space:normal; text-align:center; line-height:1.4; padding-block:12px; }
@media(max-width:760px){ .site-page .model-hero h1 { font-size:clamp(3.4rem,16vw,4.5rem); } .site-page .quote-intro h1 { font-size:clamp(2.1rem,10.3vw,2.7rem); } }
.site-page .page-hero-media { width:100%; max-width:100%; }
.site-page .page-hero-media img { position:absolute; inset:0; }
@media(max-width:760px){.site-page .page-hero { grid-template-columns:minmax(0,1fr); }.site-page .page-hero-media { width:100%;height:auto;aspect-ratio:4/3; }}
