/* KNS project pages: small additions on top of home.css (home design unchanged). */
.sizes th[scope=row]{white-space:normal;min-width:140px;font-weight:700}
.hero-stats strong{font-size:15px}
.hero-stats{max-width:720px}
.copy-block p{margin:0 0 1.05em}
.panel .facts{margin-top:8px}
.panel .facts dd{font-size:16px}
.steps li p{font-size:16.5px;color:var(--ink)}
.section .tick-list{max-width:820px}
.panel .tick-list{margin-bottom:0}
.others a strong{color:var(--ink)}
.others a:hover strong{color:var(--teal)}
@media (max-width:720px){.hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.steps{grid-template-columns:minmax(0,1fr)}
.steps li{min-width:0}
.steps li p{overflow-wrap:anywhere}

.panel .panel-h{font-size:clamp(1.3rem,1.1rem + .9vw,1.7rem);margin:0 0 12px}
.media img{aspect-ratio:auto;height:auto}
.section .tick-list{max-width:none}
.two-col>.copy-block{max-width:none}
.tbl-wrap table.sizes thead th{text-align:left}
.feature-grid .feature h3{margin-top:0}
.split>*{min-width:0}
.panel li{overflow-wrap:anywhere}
@media (max-width:720px){.split{grid-template-columns:minmax(0,1fr)}}

.tick-cols{columns:2;column-gap:28px}.tick-cols li{break-inside:avoid;margin-bottom:8px}
.loc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:22px}
.loc-box{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.section.alt .loc-box{background:var(--paper)}
.loc-box img{width:100%;aspect-ratio:16/7;object-fit:cover;display:block}
.loc-body{padding:18px 20px}
.loc-body h3{font-size:19px;margin:0 0 10px;color:var(--teal-dark)}
.dot-list{margin:0;padding-left:1.1em}.dot-list li{margin-bottom:6px;overflow-wrap:anywhere}
.logo-fig{display:flex;justify-content:center;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px}
.logo-fig img{width:100%;max-width:340px;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:0}
@media (max-width:960px){.loc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.loc-grid{grid-template-columns:minmax(0,1fr)}.tick-cols{columns:1}}

.sec-cta{margin-top:30px;display:flex;flex-wrap:wrap;gap:12px}
.sec-cta.left{justify-content:flex-start}.sec-cta.center{justify-content:center}.sec-cta.right{justify-content:flex-end}
@media (max-width:640px){.sec-cta{justify-content:stretch!important}.sec-cta .btn{width:100%}}
.tbl-wrap+.body-lg{margin-top:18px}

.price-tbl td,.price-tbl th{vertical-align:middle}.price-tbl .btn{white-space:nowrap}

.map-box{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--teal-tint)}
.map-box iframe{display:block;width:100%;height:440px;border:0}
.copy-block.more{max-width:none;margin-top:22px}
@media (max-width:960px){.map-box{position:static}.map-box iframe{height:320px}}

.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:16px}
.info-stack{display:grid;gap:16px}
.info-box{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;min-width:0}
.section.alt .info-box{background:var(--white)}
.info-box h3{font-size:19px;margin:0 0 10px;color:var(--teal-dark)}
.info-box .dot-list{margin:0}
.sec-intro{margin-top:0;max-width:76ch}
.status-pill{display:inline-block;background:var(--teal-tint);color:var(--teal-dark);font-weight:700;padding:8px 14px;border-radius:99px;margin-bottom:14px}

/* ===== reference-style sections (svx) ===== */
.svx-sec{padding:72px 0}
.svx-head{text-align:center;max-width:1000px;margin:0 auto 34px}
.svx-head h2{margin:0;font-size:clamp(1.6rem,1.2rem + 1.4vw,2.3rem);line-height:1.25;max-width:none}
.divied{display:block;width:72px;height:3px;margin:16px auto 18px;background:var(--teal);position:relative;border-radius:2px}
.divied::after{content:"";position:absolute;left:50%;top:-3px;width:9px;height:9px;transform:translateX(-50%) rotate(45deg);background:var(--teal);box-shadow:0 0 0 3px var(--paper)}
.section.alt .divied::after{box-shadow:0 0 0 3px var(--white)}
.svx-lead{margin:0;color:var(--ink-2);font-size:17px;line-height:1.8}
.svx-sec p,.svx-sec li{line-height:1.8}
.svx-grid{display:grid;gap:20px}
.svx-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.svx-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.svx-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.svx-split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:28px;align-items:start}
.svx-split>*{min-width:0}
.svx-card{background:var(--white);border:1px solid var(--line);border-radius:8px;box-shadow:0 10px 30px rgba(6,43,30,.07);padding:26px 24px;height:100%;transition:transform .3s,box-shadow .3s,border-color .3s;min-width:0}
.section.alt .svx-card{background:var(--paper)}
.section.alt .svx-table,.section.alt .svx-ptable{background:var(--white)}
.svx-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(6,43,30,.13);border-color:var(--teal)}
.svx-card h3{font-size:20px;line-height:1.3;margin:0 0 10px;color:var(--teal-dark)}
.svx-card p{margin:0 0 10px}
.svx-card>p:last-child{margin-bottom:0}
.svx-ico{width:50px;height:50px;border-radius:50%;background:var(--teal-tint);color:var(--teal);display:flex;align-items:center;justify-content:center;margin-bottom:14px;box-shadow:inset 0 0 0 1px var(--line)}
.svx-ico--lg{width:60px;height:60px;margin:0 auto 12px}
.svx-ico svg{display:block}
.svx-tile{background:var(--white);border:1px solid var(--line);border-left:4px solid var(--teal);border-radius:4px;padding:18px 20px;box-shadow:0 8px 22px rgba(6,43,30,.06);min-width:0}
.svx-tile strong{display:block;font-size:22px;line-height:1.25;color:var(--teal-dark);overflow-wrap:anywhere}
.svx-tile span{display:block;font-size:13px;letter-spacing:.8px;text-transform:uppercase;color:var(--ink-2);margin-top:4px}
.svx-check{list-style:none;margin:0 0 4px;padding:0}
.svx-check li{position:relative;padding-left:30px;margin-bottom:10px;overflow-wrap:anywhere}
.svx-check li::before{content:"";position:absolute;left:0;top:7px;width:18px;height:18px;border-radius:50%;background:var(--teal-tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230B5D3B' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/12px no-repeat}
.svx-table,.svx-ptable{width:100%;border-collapse:separate;border-spacing:0;background:var(--paper);border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:0 10px 30px rgba(6,43,30,.06)}
.svx-table th,.svx-table td{padding:13px 18px;font-size:15.5px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.svx-table tr:last-child th,.svx-table tr:last-child td{border-bottom:0}
.svx-table th{width:38%;background:var(--teal-tint);color:var(--teal-dark);font-weight:600}
.svx-tba{color:#8a6d1d;font-weight:600}
.svx-ptable{display:block;max-width:999px;margin:0 auto;overflow-x:auto}
.svx-ptable table{width:100%;border-collapse:collapse;min-width:560px}
.svx-ptable thead{background:var(--teal-dark)}
.svx-ptable thead th{color:#fff;text-align:left;padding:14px 22px;font-size:15px;letter-spacing:.03em}
.svx-ptable td,.svx-ptable th[scope=row]{padding:13px 22px;border-bottom:1px solid var(--line);text-align:left;font-size:16px;vertical-align:middle;background:var(--white)}
.svx-ptable tbody tr:nth-child(even) td,.svx-ptable tbody tr:nth-child(even) th{background:var(--paper)}
.svx-ptable .btn{padding:7px 14px;font-size:14px;white-space:nowrap}
.svx-note{font-size:13.5px;color:var(--ink-2);margin:14px 0 0!important;line-height:1.6!important}
.svx-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.svx-actions.center{justify-content:center}
.svx-price{font-size:28px;font-weight:700;color:var(--teal);line-height:1.2;margin:0 0 8px!important;font-family:var(--serif,inherit)}
.svx-badge{display:inline-block;padding:4px 12px;border-radius:50px;background:var(--teal-tint);color:var(--teal-dark);font-size:12.5px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;margin-bottom:12px}
.svx-h3{text-align:center;font-size:clamp(1.25rem,1.05rem + .8vw,1.6rem);margin:42px 0 22px}
.svx-text{max-width:1100px;margin:26px auto 0}
.svx-text.center{text-align:center;margin-top:0;margin-bottom:22px}
.svx-split .svx-text{margin-top:0}
.svx-text p{margin:0 0 1em;font-size:16.5px}
.svx-gap{margin-top:22px}
.svx-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px;counter-reset:step}
.svx-step{background:var(--white);border:1px solid var(--line);border-radius:8px;padding:22px 18px;box-shadow:0 10px 30px rgba(6,43,30,.07);min-width:0}
.section.alt .svx-step{background:var(--paper)}
.svx-step::before{counter-increment:step;content:counter(step);display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--teal-dark);color:#fff;font-weight:700;margin-bottom:12px;box-shadow:0 0 0 4px var(--teal-tint)}
.svx-step.is-done::before{background:var(--teal)}
.svx-step h3{font-size:17px;margin:0 0 6px;color:var(--teal-dark)}
.svx-step p{margin:0;font-size:14.5px;line-height:1.6}
.svx-big{text-align:center;padding:34px 24px;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:220px}
.svx-big strong{display:block;font-size:clamp(1.9rem,1.4rem + 1.6vw,2.8rem);line-height:1.15;color:var(--teal-dark)}
.svx-big span{display:block;margin-top:6px;color:var(--ink-2);font-size:14px;letter-spacing:1px;text-transform:uppercase}
.svx-amen-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-bottom:30px}
.svx-amen{background:var(--white);border:1px solid var(--line);border-radius:8px;text-align:center;padding:22px 12px;box-shadow:0 6px 18px rgba(6,43,30,.05);transition:.3s;min-width:0}
.section.alt .svx-amen{background:var(--paper)}
.svx-amen:hover{border-color:var(--teal);transform:translateY(-3px)}
.svx-amen strong{display:block;font-size:15px;line-height:1.35;color:var(--teal-dark);overflow-wrap:anywhere}
.svx-cta{background:var(--teal-dark)!important;border-color:var(--teal-dark);text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}
.svx-cta h3,.svx-cta p{color:#fff}
.svx-cta .btn{margin-top:8px;background:#fff;color:var(--teal-dark);border-color:#fff}
.map-wide iframe{height:450px}
.svx-sec .logo-fig{margin:0}
@media (max-width:991px){.svx-grid--3,.svx-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}.svx-split{grid-template-columns:minmax(0,1fr)}.svx-amen-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:575px){.svx-sec{padding:44px 0}.svx-grid--2,.svx-grid--3,.svx-grid--4{grid-template-columns:minmax(0,1fr)}.svx-amen-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.svx-table th,.svx-table td{display:block;width:100%;padding:10px 16px}.svx-table th{border-bottom:0;padding-bottom:2px}.svx-head{margin-bottom:24px}.map-wide iframe{height:320px}.svx-actions .btn{width:100%}}
.svx-text{max-width:none;margin:26px 0 0}.svx-text.center{max-width:900px;margin:0 auto 22px}
.svx-amen-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin-bottom:0}
.svx-amen{flex:0 1 calc((100% - 64px)/5)}
@media (max-width:991px){.svx-amen{flex-basis:calc((100% - 32px)/3)}}
@media (max-width:575px){.svx-amen{flex-basis:calc((100% - 16px)/2)}}
