*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
.starter2-body{font-family:var(--font-body, 'Inter', sans-serif);font-size:var(--base-size, 16px);line-height:var(--line-height, 1.65);color:var(--color-text, #1f2937);background:var(--color-bg, #f3f4f6);-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4,h5,h6{font-family:var(--font-heading, 'Inter', sans-serif);font-weight:700;line-height:1.2;color:var(--color-text, #1f2937);letter-spacing:-0.02em;}
a{color:var(--color-primary, #007080);text-decoration:none;transition:color 0.25s ease;}
.s2-content a,.s2-block a:not(.btn):not(.btn-primary):not(.btn-call),.s2-footer-links a{background-image:linear-gradient(currentColor, currentColor);background-size:0% 1px;background-position:left bottom;background-repeat:no-repeat;transition:background-size 0.3s ease, color 0.25s ease;}
.s2-content a:hover,.s2-block a:not(.btn):not(.btn-primary):not(.btn-call):hover,.s2-footer-links a:hover{background-size:100% 1px;}
a:focus-visible,button:focus-visible,.btn:focus-visible{outline:2px solid var(--color-primary, #007080);outline-offset:4px;border-radius:4px;}
img{max-width:100%;height:auto;display:block;}
.s2-container{max-width:1140px;margin:0 auto;padding:0 24px;}
.s2-header{background:rgba(255, 255, 255, 0.85);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 1px 3px rgba(0, 0, 0, 0.06);position:sticky;top:0;z-index:100;transition:box-shadow 0.3s ease, background 0.3s ease;}
.s2-header-inner{display:flex;align-items:center;justify-content:space-between;height:90px;gap:16px;}
.s2-logo{display:flex;align-items:center;flex-shrink:0;}
.s2-logo-img{max-height:60px;width:auto;}
.s2-nav-list{display:flex;list-style:none;gap:2px;}
.s2-nav-link{display:block;padding:6px 14px;color:var(--color-text, #1f2937);font-size:0.82rem;font-weight:500;letter-spacing:0.3px;border-radius:6px;position:relative;transition:color 0.15s;}
.s2-nav-link::after{content:'';position:absolute;bottom:0;left:25%;width:50%;height:2px;background:linear-gradient(135deg, var(--color-primary, #007080), var(--color-secondary, #00a3b5));transform:scaleX(0);transition:transform 0.2s ease;}
.s2-nav-link:hover{color:var(--color-primary, #007080);}
.s2-nav-link:hover::after{transform:scaleX(1);}
.s2-nav-link.active{color:var(--color-primary, #007080);}
.s2-has-dropdown{position:relative;}
.s2-dropdown{position:absolute;top:calc(100% + 2px);left:50%;transform:translateX(-50%) translateY(8px);background:var(--color-surface, #ffffff);border-radius:12px;box-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.07),0 20px 40px -4px rgba(0, 0, 0, 0.1);padding:8px 0;min-width:230px;list-style:none;z-index:200;border:1px solid var(--color-border, #e5e7eb);opacity:0;visibility:hidden;pointer-events:none;transition:opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1),transform 0.2s cubic-bezier(0.4, 0, 0.2, 1),visibility 0.2s;}
.s2-dropdown::before{content:'';position:absolute;top:-8px;left:0;right:0;height:8px;}
.s2-has-dropdown:hover>.s2-dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0);}
.s2-dropdown li{border-bottom:1px solid rgba(0, 0, 0, 0.04);}
.s2-dropdown li:last-child{border-bottom:none;}
.s2-dropdown-link{display:block;padding:10px 20px;color:var(--color-text, #1f2937);font-size:0.84rem;font-weight:450;letter-spacing:0.1px;text-transform:uppercase;transition:all 0.15s ease;border-left:3px solid transparent;}
.s2-dropdown-link:hover{background:color-mix(in srgb, var(--color-primary, #007080) 8%, transparent);color:var(--color-primary, #007080);border-left-color:var(--color-primary, #007080);padding-left:23px;}
.s2-header-cta{background:var(--color-primary, #007080);color:#fff !important;padding:8px 20px;border-radius:50px;font-size:0.8rem;font-weight:600;white-space:nowrap;transition:all 0.2s;}
.s2-header-cta:hover{filter:brightness(1.15);box-shadow:0 4px 12px rgba(0, 0, 0, 0.15);}
@media (min-width:769px){.s2-mobile-only{display:none !important;}}
.s2-mobile-list,.s2-mobile-list ul{list-style:none;padding:0;margin:0;}
.s2-mobile-sub{list-style:none;padding:4px 0 4px 0;margin:0 0 0 12px;border-left:2px solid var(--color-primary, #007080);background:color-mix(in srgb, var(--color-primary, #007080) 4%, transparent);border-radius:0 8px 8px 0;}
.s2-mobile-sub-link{display:block;padding:11px 16px 11px 18px;color:var(--color-text, #1f2937);font-size:0.82rem;font-weight:500;letter-spacing:0.5px;text-transform:uppercase;transition:all 0.15s;border-bottom:1px solid rgba(0, 0, 0, 0.04);}
.s2-mobile-sub li:last-child .s2-mobile-sub-link{border-bottom:none;}
.s2-mobile-sub-link:hover,.s2-mobile-sub-link:active{color:var(--color-primary, #007080);background:color-mix(in srgb, var(--color-primary, #007080) 8%, transparent);padding-left:22px;}
.s2-hero{background:linear-gradient(135deg, var(--color-primary, #007080) 0%, var(--color-secondary, #00a3b5) 100%);color:#ffffff;padding:100px 24px;text-align:center;position:relative;overflow:hidden;}
.s2-hero[style*="--hero-bg"]{background:linear-gradient(135deg,color-mix(in srgb, var(--color-primary, #007080) 78%, transparent) 0%,color-mix(in srgb, var(--color-secondary, #00a3b5) 62%, transparent) 100%),var(--hero-bg) center/cover no-repeat;}
.s2-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(to bottom, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.35) 100%);z-index:0;pointer-events:none;}
.s2-hero>*{position:relative;z-index:1;}
.s2-hero-inner{max-width:800px;margin:0 auto;}
.s2-hero .hero-block{max-width:700px;margin:0 auto;}
.s2-hero .hero-content{text-align:center;}
.s2-hero h1{font-size:clamp(2rem, 5vw, 3.5rem);font-weight:800;color:#ffffff;margin-bottom:24px;letter-spacing:-0.03em;line-height:1.1;}
.s2-hero .hero-subtitle{font-size:clamp(1rem, 2.5vw, 1.2rem);color:rgba(255, 255, 255, 0.8);margin-bottom:36px;line-height:1.7;}
.s2-hero .hero-actions{margin-bottom:48px;}
.s2-hero .hero-actions .btn,.s2-hero .hero-actions .btn-primary{background:var(--color-surface, #ffffff) !important;color:var(--terrain-dark, #0a2342) !important;padding:14px 36px;border-radius:50px;font-size:1rem;font-weight:700;display:inline-block;text-decoration:none;box-shadow:0 4px 20px rgba(0, 0, 0, 0.2);transition:all 0.25s;border:none;}
.s2-hero .hero-actions .btn:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(0, 0, 0, 0.25);}
.s2-hero .trust-badges{display:flex;justify-content:center;align-items:center;gap:16px;flex-wrap:wrap;}
.s2-hero .trust-badge{display:flex;align-items:center;gap:8px;font-size:0.82rem;font-weight:500;background:rgba(255, 255, 255, 0.12);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255, 255, 255, 0.18);border-radius:50px;padding:8px 18px;transition:background 0.25s ease;}
.s2-hero .trust-badge:hover{background:rgba(255, 255, 255, 0.2);}
.s2-hero .trust-badge-icon svg{stroke:#ffffff;width:20px;height:20px;flex-shrink:0;}
.s2-hero .trust-badge-label{text-align:left;line-height:1.3;text-transform:uppercase;font-size:0.7rem;letter-spacing:0.6px;font-weight:600;}
.s2-hero#section-page-hero{background:linear-gradient(135deg, var(--color-primary, #007080) 0%, var(--color-secondary, #00a3b5) 100%) !important;color:#fff;padding:60px 24px 48px;}
.page-hero-block{text-align:center;}
.page-hero-block .container{max-width:800px;margin:0 auto;}
.page-hero-block .breadcrumb{font-size:0.85rem;color:rgba(255, 255, 255, 0.7);margin-bottom:12px;}
.page-hero-block .breadcrumb a{color:rgba(255, 255, 255, 0.8);text-decoration:none;}
.page-hero-block .breadcrumb a:hover{color:#fff;}
.page-hero-block .breadcrumb .sep{margin:0 6px;color:rgba(255, 255, 255, 0.5);}
.page-hero-block h1{color:#fff;font-size:clamp(1.6rem, 4vw, 2.2rem);font-weight:800;line-height:1.3;}
.page-hero-block .hero-actions{margin-top:20px;margin-bottom:0;display:flex;justify-content:center;gap:12px;flex-wrap:wrap;}
.s2-section{padding:100px 0;}
.s2-section:nth-child(odd){background:var(--color-surface, #ffffff);}
.s2-section:nth-child(even){background:var(--color-bg, #f3f4f6);}
.s2-section.section-terrain-ice{background:var(--terrain-ice, #eef3f8) !important;}
.s2-section.section-terrain-warm{background:var(--terrain-warm, #fef9f3) !important;}
.s2-section.section-terrain-dark{background:radial-gradient(ellipse at 20% 80%, oklch(0.35 0.12 190 / 0.35), transparent 60%),linear-gradient(160deg,var(--terrain-dark, #0a2530) 0%,var(--terrain-dark, #0a2530) 40%,oklch(0.38 0.10 190) 100%) !important;color:#ffffff;}
.s2-section.section-post-why-choose{background-color:#E7E7E7 !important;opacity:0.92;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;color:var(--color-text, #1a1a2e);}
.s2-section.section-post-why-choose .s2-section-title,.s2-section.section-post-why-choose .heading,.s2-section.section-post-why-choose h2,.s2-section.section-post-why-choose h3{color:var(--color-primary, #007080);}
.s2-section.section-post-why-choose p,.s2-section.section-post-why-choose li,.s2-section.section-post-why-choose .s2-section-subtitle{color:var(--color-text-secondary, #4a4a68);}
.s2-section.section-post-why-choose .kicker{color:var(--color-primary, #007080);border-color:var(--color-primary, #007080);}
.s2-section.section-post-why-choose .text-accent{color:var(--color-primary, #007080);}
.s2-section.section-post-why-choose img{border:none;}
.s2-section.section-terrain-dark .s2-section-title,.s2-section.section-terrain-dark .heading{color:#ffffff;}
.s2-section.section-terrain-dark .s2-title-accent{background:var(--color-accent, #13c2c2);}
.s2-section.section-terrain-dark p,.s2-section.section-terrain-dark li{color:rgba(255, 255, 255, 0.78) !important;}
.s2-section h2,.s2-main h2{text-transform:uppercase;}
.s2-card h2,.s2-why-choose h2{text-transform:none;}
.section-terrain-dark .kicker{background:rgba(255, 255, 255, 0.1);color:#FFF;border-color:rgba(255, 255, 255, 0.15);}
.s2-section .s2-split-grid{position:relative;}
.s2-section .s2-split-text{position:relative;}
.s2-section .s2-content{position:relative;}
.s2-section .s2-card-grid{position:relative;}
.s2-split-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.s2-split-reverse{direction:rtl;}
.s2-split-reverse>*{direction:ltr;}
.s2-split-col .heading{font-size:1.8rem;font-weight:800;margin-bottom:24px;color:var(--color-text, #111827);}
.s2-split-col .text-content p{color:var(--color-text-secondary, #4b5563);font-size:1rem;line-height:1.75;margin-bottom:14px;}
.s2-split-col .text-content ul,.s2-split-col .text-content ol{list-style:none;padding:0;}
.s2-split-col .text-content li{padding:12px 0 12px 32px;position:relative;color:var(--color-text-secondary, #4b5563);border-bottom:1px solid var(--color-border, #e5e7eb);line-height:1.65;}
.s2-split-col .text-content li:last-child{border-bottom:none;}
.s2-split-col .text-content li::before{content:'';position:absolute;left:0;top:16px;width:10px;height:10px;background:var(--color-primary, #007080);border-radius:50%;}
.s2-split-photo{display:flex;flex-direction:column;gap:24px;}
.s2-split-photo img{width:100% !important;aspect-ratio:4 / 3;height:auto !important;object-fit:cover;border-radius:16px;box-shadow:0 20px 40px rgba(0, 0, 0, 0.1);}
.s2-why-choose{background:radial-gradient(ellipse at 20% 80%, oklch(0.35 0.12 190 / 0.35), transparent 60%),linear-gradient(160deg,var(--terrain-dark, #0a2530) 0%,var(--terrain-dark, #0a2530) 40%,oklch(0.38 0.10 190) 100%) !important;color:#fff;padding:80px 0;position:relative;overflow:hidden;}
.s2-why-title{font-size:clamp(1.5rem, 4vw, 2rem);font-weight:800;color:#fff;margin-bottom:32px;line-height:1.3;}
.s2-why-items{display:flex;flex-direction:column;gap:20px;}
.s2-why-item{display:flex;align-items:flex-start;gap:16px;color:rgba(255, 255, 255, 0.88);font-size:1rem;line-height:1.65;}
.s2-check-icon{flex-shrink:0;width:26px;height:26px;color:rgba(255, 255, 255, 0.9);margin-top:2px;}
.s2-why-photo{width:100%;height:420px;object-fit:cover;border-radius:16px;box-shadow:0 20px 50px rgba(0, 0, 0, 0.25);}
.s2-why-choose .s2-block-why_choose:empty{display:none;}
.s2-why-choose .s2-split-col strong{color:#fff;}
.s2-why-choose li::before,.section-terrain-dark li::before{background:rgba(255, 255, 255, 0.9);}
.s2-why-choose .why-choose-block{display:flex;flex-direction:column;gap:16px;}
.s2-why-choose .why-choose-item{display:flex;gap:12px;color:rgba(255, 255, 255, 0.88);font-size:1rem;line-height:1.65;}
.s2-why-choose .why-choose-number{display:flex;align-items:center;justify-content:center;min-width:28px;height:28px;background:var(--color-secondary, #00a3b5);color:#fff;border-radius:50%;font-weight:700;font-size:0.85rem;}
.s2-check-icon{width:24px;height:24px;flex-shrink:0;color:var(--color-secondary, #00a3b5);}
.kicker{display:inline-block;font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--color-primary, #007080);background:color-mix(in srgb, var(--color-primary, #007080) 10%, transparent);padding:4px 14px;border-radius:50px;margin-bottom:12px;margin-top:32px;}
.s2-section-header .kicker,.s2-block:has(.kicker){text-align:center;}
.s2-card-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:32px;container-type:inline-size;container-name:card-grid;}
.s2-gallery-grid{grid-auto-rows:1fr;}
.s2-gallery-item{border-radius:var(--radius-lg, 16px);overflow:hidden;aspect-ratio:4 / 3;}
.s2-gallery-item figure,.s2-gallery-item .image-block,.s2-gallery-item div{margin:0 !important;padding:0 !important;width:100% !important;height:100% !important;}
.s2-gallery-item img{width:100% !important;height:100% !important;object-fit:cover !important;display:block;border-radius:var(--radius-lg, 16px);}
@container card-grid (max-width:700px){.s2-card-grid{grid-template-columns:repeat(2, 1fr);}}
@container card-grid (max-width:450px){.s2-card-grid{grid-template-columns:1fr;}}
.s2-card{background:var(--color-surface, #ffffff);padding:36px 28px 32px;border-radius:16px;border:1px solid var(--color-border, #e5e7eb);box-shadow:0 1px 3px rgba(0, 0, 0, 0.04), 0 4px 12px rgba(0, 0, 0, 0.06);transition:transform 0.3s ease, box-shadow 0.3s ease;text-align:center;overflow:hidden;}
.s2-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(0, 0, 0, 0.12);}
.s2-card .image-block{margin:0 0 16px;overflow:hidden;border-radius:var(--radius-lg, 12px);height:300px;}
.s2-card figure,.s2-card .image-block figure{margin:0 !important;padding:0 !important;width:100% !important;height:100% !important;}
.s2-card .image-block img,.s2-card img{width:100% !important;height:300px !important;object-fit:cover;border-radius:var(--radius-lg, 12px);display:block;transition:transform 0.4s ease;}
.s2-card:hover img{transform:scale(1.05);}
.s2-card-icon{width:64px;height:64px;margin:0 auto 22px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--color-primary, #007080);color:#ffffff;}
.s2-card-icon-svg{stroke:#ffffff;}
.s2-card .heading{font-size:1.15rem;font-weight:700;margin-bottom:10px;color:var(--color-primary, #007080);}
.s2-card .text-content p{color:var(--color-text-secondary, #6b7280);font-size:0.9rem;line-height:1.65;}
.s2-card-media{background:transparent;border:none;box-shadow:none;padding:0;border-radius:0;}
.s2-card-media:hover{transform:none;box-shadow:none;}
.s2-card-media img{border-radius:12px;width:100%;height:auto;display:block;}
.s2-cols-2{grid-template-columns:repeat(2, 1fr);}
.s2-cols-3{grid-template-columns:repeat(3, 1fr);}
.s2-cols-4{grid-template-columns:repeat(4, 1fr);}
.s2-content{max-width:800px;margin:0 auto;}
.s2-block+.s2-block{margin-top:4px;}
.s2-block .heading{font-size:1.45rem;font-weight:700;margin-bottom:12px;}
.s2-block h2.heading{font-weight:800;color:var(--color-primary, #007080);}
.s2-why-choose .s2-block .heading,.section-terrain-dark .s2-block .heading{color:#fff;}
.s2-block h3{font-size:1.2rem;font-weight:800;color:var(--color-primary, #007080);margin-bottom:10px;}
.s2-block .text-content p,.s2-block-paragraph p,.s2-block-richtext p{font-size:1rem;line-height:1.75;color:var(--color-text-secondary, #6b7280);margin-bottom:14px;}
.s2-block-richtext ul,.s2-block-richtext ol,.s2-block-list ul,.s2-block-list ol,.s2-block ul,.s2-block ol,.s2-content ul,.s2-content ol{list-style:none;margin:12px 0 20px 0;padding:0;color:var(--color-text-secondary, #6b7280);}
.s2-block-richtext li,.s2-block-list li,.s2-block li,.s2-content li{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px;line-height:1.7;}
.s2-block-richtext li::before,.s2-block-list li::before,.s2-block li::before,.s2-content li::before{content:'';flex-shrink:0;width:1.2em;height:1.2em;margin-top:0.25em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 11.08V12a10 10 0 1 1-5.93-9.14'/%3E%3Cpolyline points='22 4 12 14.01 9 11.01'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 11.08V12a10 10 0 1 1-5.93-9.14'/%3E%3Cpolyline points='22 4 12 14.01 9 11.01'/%3E%3C/svg%3E") center/contain no-repeat;}
.s2-block-image img{border-radius:16px;}
.s2-btn,.btn,.btn-primary{display:inline-block;padding:12px 28px;border-radius:50px;font-weight:700;font-size:1rem;text-decoration:none;transition:all 0.25s;border:none;cursor:pointer;}
.s2-btn-primary,.btn-primary{background:linear-gradient(135deg, var(--color-primary, #007080), var(--color-secondary, #00a3b5));color:#ffffff;}
.s2-btn-primary:hover,.btn-primary:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 4px 14px color-mix(in srgb, var(--color-primary, #007080) 35%, transparent);color:#ffffff;}
.s2-cta-fullwidth{background:linear-gradient(135deg, var(--color-primary, #007080), var(--color-secondary, #00a3b5));color:#ffffff;padding:72px 24px;text-align:center;}
.s2-cta-fullwidth .cta-block{max-width:700px;margin:0 auto;background:none;box-shadow:none;padding:0;border-radius:0;}
.s2-cta-fullwidth h2{font-size:clamp(1.5rem, 4vw, 2.2rem);font-weight:800;color:#ffffff;margin-bottom:16px;}
.s2-cta-fullwidth p,.s2-cta-fullwidth .lead{color:rgba(255, 255, 255, 0.85);font-size:1rem;margin-bottom:28px;}
.s2-cta-fullwidth .btn,.s2-cta-fullwidth .btn-primary{background:var(--color-surface, #ffffff) !important;color:var(--color-primary, #007080) !important;font-weight:700;box-shadow:0 8px 24px rgba(0, 0, 0, 0.15);}
.s2-cta-fullwidth .btn:hover{background:color-mix(in srgb, var(--color-surface, #ffffff) 92%, transparent) !important;transform:translateY(-2px);}
.s2-section .cta-block{text-align:center;padding:56px 36px;max-width:720px;margin:0 auto;background:linear-gradient(135deg, var(--color-primary, #007080), var(--color-secondary, #00a3b5));border-radius:20px;color:#ffffff;box-shadow:0 12px 40px rgba(0, 0, 0, 0.12);}
.s2-section .cta-block h2{color:#ffffff;font-size:clamp(1.4rem, 3.5vw, 2rem);font-weight:800;margin-bottom:14px;}
.s2-section .cta-block p{color:rgba(255, 255, 255, 0.85);margin-bottom:24px;}
.s2-section .cta-block .btn{background:var(--color-surface, #ffffff) !important;color:var(--color-primary) !important;font-weight:700;}
.neighborhood-links{background:var(--color-surface, #f0f4f8);padding:clamp(40px, 6vw, 72px) 0;text-align:center;}
.neighborhood-links-inner{max-width:960px;margin:0 auto;padding:0 24px;}
.neighborhood-links-inner h2{color:var(--color-primary, #007080);font-weight:800;font-size:clamp(1.4rem, 3vw, 1.8rem);margin:0 0 8px;}
.neighborhood-links-inner .lead{color:var(--color-text-secondary, #5a6a7a);font-size:0.95rem;margin:0 0 28px;line-height:1.5;}
.neighborhood-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;}
.neighborhood-pill{background:#fff;border:1.5px solid var(--color-border, #dde3ea);border-radius:50px;padding:10px 24px;color:var(--color-primary, #007080);font-weight:600;font-size:0.9rem;text-decoration:none;transition:background 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s;white-space:nowrap;}
.neighborhood-pill:hover{background:var(--color-primary, #007080);color:#fff;border-color:var(--color-primary, #007080);box-shadow:0 4px 12px rgba(0, 0, 0, 0.1);}
.phone-cta-strip{background:linear-gradient(135deg, var(--color-primary, #007080), var(--color-secondary, #00a3b5));text-align:center;padding:48px 24px;display:flex;justify-content:center;align-items:center;gap:20px;flex-wrap:wrap;position:relative;overflow:hidden;}
.phone-cta-strip::before{content:'';position:absolute;top:-40px;right:-40px;width:160px;height:160px;border-radius:50%;background:rgba(255, 255, 255, 0.08);pointer-events:none;}
.phone-cta-strip::after{content:'';position:absolute;bottom:-50px;left:-30px;width:120px;height:120px;border-radius:50%;background:rgba(255, 255, 255, 0.06);pointer-events:none;}
.cta-buttons-wrapper{display:flex;flex-direction:column;gap:20px;align-items:center;}
.cta-buttons-wrapper:has(:nth-child(2)){flex-direction:row;justify-content:center;gap:16px;flex-wrap:wrap;}
.phone-cta-strip a{display:inline-flex;align-items:center;gap:6px;padding:14px 36px;border-radius:50px;font-size:1rem;font-weight:700;text-decoration:none;background:rgba(255, 255, 255, 0.95);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--color-primary, #007080) !important;box-shadow:0 4px 20px rgba(0, 0, 0, 0.12);transition:transform 0.25s ease, box-shadow 0.25s ease;position:relative;z-index:1;}
.phone-cta-strip a:hover{transform:translateY(-3px);box-shadow:0 8px 28px rgba(0, 0, 0, 0.18);}
.mobile-call-bar{display:none;}
@media (max-width:768px){.mobile-call-bar{display:block;position:fixed;bottom:0;left:0;right:0;z-index:9999;background:linear-gradient(135deg, var(--color-primary, #007080), var(--color-secondary, #00a3b5));padding:12px 16px;box-shadow:0 -4px 20px rgba(0, 0, 0, 0.15);transform:translateY(100%);transition:transform 0.3s ease;}.mobile-call-bar.visible{transform:translateY(0);}.mobile-call-bar a{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;color:#ffffff;text-decoration:none;font-size:1.05rem;font-weight:600;letter-spacing:0.3px;}.mobile-call-bar a .mcb-text{display:flex;flex-direction:column;line-height:1.3;}.mobile-call-bar a .mcb-label{font-size:0.85rem;font-weight:700;}.mobile-call-bar a .mcb-number{font-size:0.8rem;font-weight:400;opacity:0.85;}body{padding-bottom:56px;}.s2-back-top{bottom:100px;}.mobile-call-bar-split{display:flex;gap:0;padding:0;}.mobile-call-bar-split.visible{display:flex;}.mobile-call-bar-split a{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:12px 8px;color:#fff;text-decoration:none;font-size:0.95rem;font-weight:600;}.mobile-call-bar-phone{background:var(--color-primary, #007080);}.mobile-call-bar-wa{background:#25d366;}}
.s2-footer{background:var(--terrain-dark, #0a2342);color:color-mix(in srgb, var(--color-text-secondary, #9ca3af) 80%, #ffffff);padding:60px 0 20px;font-size:0.88rem;}
.s2-footer-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));gap:36px;margin-bottom:40px;}
.s2-footer-heading{color:#ffffff;font-size:0.9rem;font-weight:600;margin-bottom:20px;}
.s2-footer-text{color:color-mix(in srgb, var(--color-text-secondary, #9ca3af) 80%, #ffffff);line-height:1.65;font-size:0.85rem;}
.s2-footer-links{list-style:none;padding:0;}
.s2-footer-links li{margin-bottom:10px;line-height:1.5;}
.s2-footer-links a{color:color-mix(in srgb, var(--color-text-secondary, #9ca3af) 80%, #ffffff);transition:color 0.2s;font-size:0.85rem;}
.s2-footer-links a:hover{color:#ffffff;}
.s2-footer-bottom{border-top:1px solid rgba(255, 255, 255, 0.06);padding-top:20px;text-align:center;font-size:0.75rem;color:color-mix(in srgb, var(--color-text-secondary, #6b7280) 65%, #ffffff);}
.s2-back-top{position:fixed;bottom:200px;right:24px;width:42px;height:42px;border-radius:10px;background:var(--color-surface, #ffffff);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(20px);transition:all 0.3s;z-index:99;box-shadow:0 4px 12px rgba(0, 0, 0, 0.15);}
.s2-back-top.visible{opacity:1;transform:translateY(0);}
.s2-back-top svg{width:18px;height:18px;stroke:var(--color-primary, #007080);fill:none;stroke-width:2.5;}
.s2-wa-float{position:fixed;bottom:28px;right:24px;width:54px;height:54px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0, 0, 0, 0.2);z-index:100;opacity:0;transform:translateY(20px);transition:opacity 0.3s, transform 0.3s;pointer-events:none;}
.s2-wa-float.visible{opacity:1;transform:translateY(0);pointer-events:auto;}
.s2-wa-float:hover{transform:scale(1.08);}
.s2-wa-float svg{width:28px;height:28px;fill:white;}
.s2-wa-float.s2-phone-float{background:var(--color-primary, #007080);bottom:96px;}
.s2-menu-btn{display:none;background:none;border:none;cursor:pointer;padding:8px;}
.s2-hamburger{display:flex;flex-direction:column;gap:5px;}
.s2-hamburger span{width:22px;height:2px;background:var(--color-text, #1f2937);border-radius:2px;transition:all 0.25s;}
.s2-mobile-nav{display:none;background:var(--color-surface, #ffffff);padding:16px 24px;border-top:1px solid var(--color-border, #e5e7eb);}
.s2-mobile-nav.active{display:block;}
.s2-mobile-list{list-style:none;}
.s2-mobile-link{display:block;padding:14px 0;color:var(--color-text, #1f2937);font-size:0.95rem;font-weight:500;border-bottom:1px solid var(--color-border, #e5e7eb);}
.s2-mobile-contact{margin-top:20px;}
.s2-mobile-contact .btn-primary{background:var(--color-surface, #ffffff) !important;color:var(--terrain-dark, #0a2342) !important;}
@media (max-width:768px){.s2-nav,.s2-header-cta{display:none;}.s2-menu-btn{display:block;}.s2-hero{padding:56px 20px 48px;}.s2-hero h1{font-size:1.8rem;}.s2-hero .trust-badges{flex-direction:column;gap:12px;}.s2-split-grid{grid-template-columns:1fr;gap:32px;}.s2-split-photo img{height:280px;}.s2-card-grid,.s2-cols-2,.s2-cols-3,.s2-cols-4{grid-template-columns:1fr;}.s2-footer-grid{grid-template-columns:1fr 1fr;gap:28px;}.s2-section{padding:60px 0;}.s2-cta-fullwidth{padding:48px 20px;}}
.s2-block h2.heading{font-weight:800;color:var(--color-primary, #007080);letter-spacing:-0.7px;}
.s2-footer-bottom{display:flex;flex-direction:column;align-items:center;text-align:center;}
.s2-footer-bottom-logo{display:block;margin:0 auto 16px;text-decoration:none;}
.s2-footer-bottom-logo img{max-height:48px;width:auto;opacity:0.85;transition:opacity 0.2s;}
.s2-footer-bottom-logo img:hover{opacity:1;}
.s2-footer-bottom-logo span{font-size:1.2rem;font-weight:700;color:rgba(255, 255, 255, 0.85);}
@media (max-width:480px){.s2-hero{padding:40px 16px;}.s2-hero h1{font-size:1.5rem;}.s2-footer-grid{grid-template-columns:1fr;}.s2-container{padding:0 16px;}}
.mobile-call-bar{position:fixed;bottom:0;left:0;right:0;z-index:998;display:none;background:var(--color-primary, #0d6efd);}
.mobile-call-bar a{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 16px;color:#fff;text-decoration:none;font-weight:600;font-size:15px;}
.mobile-call-bar a svg{flex-shrink:0;}
.mobile-call-bar-split{display:none;}
.mobile-call-bar-split a{flex:1;text-align:center;}
.mobile-call-bar-phone{background:var(--color-primary, #0d6efd);color:#fff !important;}
.mobile-call-bar-wa{background:#25d366;color:#fff !important;}
@media (max-width:768px){.mobile-call-bar,.mobile-call-bar-split{display:flex;}body{padding-bottom:56px;}}
.s2-section img:not(.logo-img):not([width="1"]){transition:transform .2s ease, box-shadow .2s ease;}
.s2-section img:not(.logo-img):not([width="1"]):hover{transform:scale(1.02);box-shadow:0 4px 16px rgba(0, 0, 0, .15);}
.text-accent{color:var(--color-primary, #007080);}
.s2-hero .text-accent{color:var(--color-secondary, #00a3b5);}
.section-terrain-dark .text-accent,.s2-why-choose .text-accent{color:var(--color-secondary, #00a3b5);}
.section-terrain-dark{background:radial-gradient(ellipse at 20% 80%, oklch(0.35 0.12 190 / 0.35), transparent 60%),linear-gradient(160deg,var(--terrain-dark, #0a2530) 0%,var(--terrain-dark, #0a2530) 40%,oklch(0.38 0.10 190) 100%);color:#e2e8f0;position:relative;overflow:hidden;}
.section-terrain-dark>*{position:relative;z-index:1;}
.section-terrain-dark .heading{color:#ffffff;}
.section-terrain-dark .s2-section-title{color:#ffffff;}
.section-terrain-dark p,.section-terrain-dark .text-content p,.section-terrain-dark .richtext-content p{color:rgba(255, 255, 255, 0.75);}
.section-terrain-dark .s2-section-subtitle{color:rgba(255, 255, 255, 0.65);}
.section-terrain-dark .s2-title-accent{background:var(--color-secondary, var(--color-primary, #00a3b5));}
.section-terrain-dark .kicker{background:rgba(255, 255, 255, 0.1);color:#FFF;border-color:rgba(255, 255, 255, 0.15);}
.section-terrain-dark .s2-section-header::before{background:radial-gradient(circle, rgba(255, 255, 255, 0.04) 0%, transparent 70%);}
.section-terrain-dark .s2-card{background:#ffffff !important;border:1px solid rgba(0, 0, 0, 0.08);box-shadow:0 4px 24px rgba(0, 0, 0, 0.15);color:var(--color-text, #1a1a2e) !important;}
.section-terrain-dark .s2-card:hover{box-shadow:0 8px 32px rgba(0, 0, 0, 0.25);transform:translateY(-4px);}
.section-terrain-dark .s2-card .heading{color:var(--color-primary, #007080) !important;}
.section-terrain-dark .s2-card p{color:var(--color-text-secondary, #4a4a68) !important;}
.section-terrain-dark .s2-card-icon{background:var(--color-primary, #007080) !important;border-color:var(--color-primary, #007080) !important;}
.section-terrain-dark .s2-card-icon svg{color:#ffffff !important;}
.section-terrain-dark img,.s2-why-choose img{border:2px solid #ffffff;}
.s2-split-photo{position:relative;}
.s2-section:not(.section-post-why-choose) .s2-split-photo::after,.s2-gallery-item::after,.s2-card .image-block::after{content:'';position:absolute;inset:0;background-image:linear-gradient(180deg, #FFFFFF08 0%, #000000A6 100%);border-radius:var(--radius-lg, 16px);pointer-events:none;z-index:1;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}
.s2-gallery-item,.s2-card .image-block{position:relative;}
.s2-split-badge{position:absolute;top:16px;right:16px;background:var(--color-primary, #007080);color:#ffffff;padding:6px 18px;border-radius:50px;font-size:0.85rem;font-weight:700;z-index:2;letter-spacing:0.02em;box-shadow:0 4px 12px rgba(0, 0, 0, 0.2);}
.s2-split-reverse .s2-split-badge{right:auto;left:16px;}

.s2-header-whatsapp{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:50px;padding:10px 24px;border-radius:999px;background:#19b982;box-shadow:0 4px 20px rgba(37,211,102,.35);font-size:.95rem;font-weight:700;transition:background .2s ease,box-shadow .2s ease,transform .2s ease;}
.s2-header-whatsapp:hover{background:#13a96f;box-shadow:0 6px 22px rgba(37,211,102,.42);transform:translateY(-1px);filter:none;}
.s2-header-whatsapp:focus-visible{outline:2px solid #087f55;outline-offset:3px;border-radius:999px;}
.s2-header-whatsapp svg{width:18px;height:18px;fill:currentColor;flex:none;}
.s2-header .s2-nav-list{align-items:center;}
.s2-nav-whatsapp{margin-left:10px;}
.geo-intro{padding:32px 0;background:var(--color-surface,#fff);}
.geo-answer{max-width:900px;margin:0 auto 12px;font-size:1.05rem;line-height:1.75;}
.geo-faq .s2-container{max-width:948px;}
.geo-faq h2{margin-bottom:24px;font-size:1.6rem;}
.geo-faq-item{border-bottom:1px solid var(--color-border,#d1d5db);}
.geo-faq-item summary{padding:18px 8px;min-height:48px;cursor:pointer;}
.geo-faq-item summary h3{display:inline;font-size:1rem;line-height:1.6;letter-spacing:normal;}
.geo-faq-item summary:focus-visible{outline:2px solid var(--color-primary,#007080);outline-offset:2px;}
.geo-faq-item p{margin:0 8px 20px;line-height:1.75;}
.geo-faq .geo-next{margin-top:24px;line-height:1.75;}
.internal-links-section{padding:52px 0;background:var(--color-surface,#f8fafc);}
.internal-links-section .s2-container{max-width:1080px;}
.internal-links-section h2{margin:0 0 20px;color:var(--color-primary,#007080);font-size:clamp(1.35rem,3vw,1.8rem);text-transform:none;}
.internal-links-list{display:flex;flex-wrap:wrap;gap:12px;list-style:none;margin:0;padding:0;}
.internal-links-list a{display:inline-flex;align-items:center;min-height:44px;padding:11px 16px;border:1px solid var(--color-border,#dbe4eb);border-radius:12px;background:#fff;color:var(--color-primary,#007080);font-weight:650;line-height:1.35;text-decoration:none;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;}
.internal-links-list a:hover,.internal-links-list a:focus-visible{background:var(--color-primary,#007080);border-color:var(--color-primary,#007080);color:#fff;transform:translateY(-1px);}
@media(min-width:769px) and (max-width:1024px){.s2-header-inner{gap:10px;}.s2-header .s2-nav-link{padding:6px 7px;font-size:.72rem;}.s2-header-whatsapp{padding:8px 14px;}}
@media(max-width:768px){.s2-header-whatsapp{display:none;}}

/* The exported theme did not style its legacy forms. Keep the WhatsApp flow readable on mobile. */
.whatsapp-form{max-width:680px;margin:24px 0;padding:28px;border:1px solid var(--color-border,#d1d5db);border-radius:12px;background:var(--color-surface,#fff);}
.whatsapp-form .whatsapp-title{font-size:1.35rem;margin-bottom:12px;}
.whatsapp-form>p{margin-bottom:20px;line-height:1.6;}
.whatsapp-form .form-grid{display:grid;gap:18px;}
.whatsapp-form label{display:block;margin-bottom:6px;font-weight:600;}
.whatsapp-form input,.whatsapp-form textarea{display:block;width:100%;min-width:0;min-height:48px;padding:12px;border:1px solid #9ca3af;border-radius:6px;background:#fff;color:#1f2937;font:inherit;font-size:16px;line-height:1.5;}
.whatsapp-form textarea{min-height:140px;resize:vertical;}
.whatsapp-form input:focus-visible,.whatsapp-form textarea:focus-visible{outline:2px solid var(--color-primary,#007080);outline-offset:2px;}
.whatsapp-form .form-footer{margin:22px 0 16px;}
.whatsapp-form button{max-width:100%;min-height:48px;white-space:normal;cursor:pointer;}
.whatsapp-form button:disabled{opacity:.6;cursor:wait;}
.whatsapp-form>p:last-child{margin-bottom:0;}
@media(max-width:600px){.whatsapp-form{padding:20px;}.whatsapp-form button{width:100%;}}

/* SEO image: semantic, dimensioned hero artwork with the existing dark overlay above it. */
.s2-hero>.s2-hero-bg{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:center;}
.s2-hero::before{z-index:1;}
.s2-hero>.s2-hero-inner{position:relative;z-index:2;}

/* Service cards link to their corresponding detail pages. */
.s2-card-link{display:block;color:inherit;text-decoration:none;cursor:pointer}.s2-card-link:focus-visible{outline:3px solid var(--color-primary,#007080);outline-offset:4px}
