:root{--p:#e4572e;--s:#172554;--a:#e4572e;--ink:#0f172a;--surface:#ffffff;--muted:#64748b;--line:#e5eaf1;--soft:#fdf5f2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);line-height:1.65;background:#fff}a{text-decoration:none;color:inherit}.wrap,.narrow{width:min(1160px,calc(100% - 40px));margin:auto}.narrow{width:min(820px,calc(100% - 40px))}.site-header{position:sticky;top:0;z-index:30;background:#ffffffed;backdrop-filter:blur(14px);border-bottom:1px solid #eef1f5}.nav{height:82px;display:flex;align-items:center;gap:30px}.logo{display:flex;align-items:center;gap:11px;font-weight:900;font-size:17px;margin-right:auto}.logo-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,var(--p),#6d28d9);color:#fff;font-size:21px;box-shadow:0 9px 24px color-mix(in srgb,var(--p) 25%,transparent)}.logo-image{overflow:hidden;background:#fff!important;border:1px solid var(--line)}.logo-image img{width:100%;height:100%;object-fit:contain;display:block}.logo small{display:block;color:var(--muted);font-weight:600;font-size:10px}.nav nav{display:flex;gap:25px;font-size:13px;font-weight:750}.nav nav a:hover{color:var(--p)}.menu{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:13px 20px;border-radius:11px;font-weight:850;border:1px solid transparent;transition:.2s;cursor:pointer}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,var(--p),color-mix(in srgb,var(--p) 70%,#6d28d9));color:#fff;box-shadow:0 12px 26px color-mix(in srgb,var(--p) 22%,transparent)}.btn-light{background:#fff;color:var(--ink);border-color:#dfe5ee}.hero{overflow:hidden;background:radial-gradient(circle at 85% 15%,color-mix(in srgb,var(--p) 14%,transparent),transparent 34%),linear-gradient(135deg,#f8fbff,#fff 55%,#f8f5ff);padding:78px 0 0}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:70px;align-items:center}.eyebrow{display:inline-block;color:var(--p);font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.eyebrow.light{color:#bfdbfe}.hero h1{font-size:clamp(44px,5.2vw,72px);line-height:1.02;letter-spacing:-.045em;margin:15px 0 22px}.hero-copy>p{font-size:19px;color:var(--muted);max-width:650px}.actions{display:flex;flex-wrap:wrap;gap:11px;margin:28px 0 15px}.micro{font-size:12px;color:var(--muted);font-weight:700}.hero-art{position:relative;min-height:500px;display:grid;place-items:center}.orb{position:absolute;width:420px;height:420px;border-radius:50%;background:linear-gradient(135deg,var(--p),#7c3aed);filter:saturate(.9)}.photo-card{position:relative;width:78%;min-height:380px;border-radius:28px;padding:25px;background:linear-gradient(160deg,#fff,#eef4ff);box-shadow:0 35px 70px #0f172a24;display:flex;flex-direction:column;justify-content:space-between;border:1px solid #ffffffb8;transform:rotate(2deg)}.photo-top,.photo-bottom{display:flex;justify-content:space-between;gap:10px}.photo-top span,.photo-bottom span{color:var(--muted);font-size:12px}.house{font-size:150px;line-height:1;text-align:center;color:var(--p);text-shadow:0 20px 50px color-mix(in srgb,var(--p) 22%,transparent)}.floating-card{position:absolute;bottom:45px;left:0;background:#fff;padding:16px 20px;border-radius:15px;box-shadow:0 18px 45px #0f172a24}.floating-card b,.floating-card span{display:block}.floating-card span{font-size:11px;color:var(--muted)}.trust{margin-top:65px;display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 18px 50px #0f172a0d;transform:translateY(34px)}.trust div{padding:20px 24px;border-right:1px solid var(--line)}.trust div:last-child{border:0}.trust b,.trust span{display:block}.trust span{font-size:11px;color:var(--muted)}.section{padding:95px 0}.intro{padding-top:125px}.center{text-align:center}.section h2{font-size:clamp(32px,4vw,48px);line-height:1.1;letter-spacing:-.035em;margin:12px 0 20px}.lead-copy{font-size:18px;color:var(--muted)}.soft{background:var(--soft)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:38px}.section-head>div{max-width:650px}.section-head>p{max-width:420px;color:var(--muted)}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:0 12px 35px #0f172a08;transition:.2s}.service-card:hover{transform:translateY(-4px);box-shadow:0 20px 45px #0f172a12}.service-icon{width:44px;height:44px;border-radius:12px;background:color-mix(in srgb,var(--p) 10%,#fff);color:var(--p);display:grid;place-items:center;font-weight:900}.service-photo{width:100%;height:190px;object-fit:cover;display:block}.service-pad{padding:0}.service-card:has(.service-photo){padding:0;overflow:hidden}.service-card:has(.service-photo) .service-pad{padding:22px 28px 28px}.photo-real{padding:0;overflow:hidden}.photo-real img{width:100%;height:380px;object-fit:cover;display:block}.service-card h3{font-size:20px}.service-card p{color:var(--muted)}.service-card a{font-weight:850;color:var(--p)}.dark{background:linear-gradient(135deg,var(--s),#172554);color:#fff}.why-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.why-grid>div:first-child>p{color:#cbd5e1}.benefits{display:grid;grid-template-columns:1fr 1fr;gap:14px}.benefit{display:flex;gap:13px;border:1px solid #ffffff20;background:#ffffff0a;border-radius:16px;padding:20px}.benefit>span{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#ffffff14;color:#fff;flex:0 0 32px}.benefit h3{margin:2px 0 5px}.benefit p{color:#cbd5e1;margin:0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.step{padding:25px;border-top:3px solid var(--p);background:#fff;box-shadow:0 12px 35px #0f172a09;border-radius:0 0 16px 16px}.step>span{color:var(--p);font-weight:900;font-size:13px}.step p{color:var(--muted)}.area{background:linear-gradient(135deg,#fff,#f4f8ff)}.area-grid{display:grid;grid-template-columns:1fr .8fr;gap:70px;align-items:center}.map-card{min-height:310px;border-radius:24px;background:linear-gradient(135deg,var(--s),var(--p));color:#fff;padding:38px;position:relative;overflow:hidden}.map-card span{font-size:11px;letter-spacing:.15em}.map-card b{display:block;font-size:42px;margin-top:55px}.map-lines{position:absolute;inset:0;background:repeating-radial-gradient(circle at 70% 35%,transparent 0 30px,#ffffff12 31px 32px)}.faq{margin-top:35px}.faq details{background:#fff;border:1px solid var(--line);border-radius:13px;margin:11px 0;padding:0 19px}.faq summary{padding:18px 0;font-weight:850;cursor:pointer;display:flex;justify-content:space-between}.faq details p{color:var(--muted);padding:0 0 18px;margin:0}.cta{background:linear-gradient(120deg,var(--p),#6d28d9);color:#fff;padding:65px 0}.cta-grid{display:flex;justify-content:space-between;gap:50px;align-items:center}.cta h2{font-size:40px;margin:10px 0}.cta p{color:#e9e8ff}.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:65px}.contact-card{margin-top:30px;padding:23px;background:var(--soft);border-radius:15px}.lead{display:grid;gap:12px;background:#fff;border:1px solid var(--line);padding:28px;border-radius:20px;box-shadow:0 18px 50px #0f172a0c}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.lead input,.lead textarea,.lead select{width:100%;padding:13px 14px;border:1px solid #dce3ec;border-radius:10px;font:inherit;background:#fff}.lead textarea{min-height:115px;resize:vertical}.lead small{color:var(--muted)}.inner-hero{padding:75px 0;background:linear-gradient(135deg,#f7faff,#fff)}.inner-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:center}.inner-photo{border-radius:24px;overflow:hidden;box-shadow:0 22px 55px #0f172a20;background:#eef2f7}.inner-photo img{display:block;width:100%;height:330px;object-fit:cover}.content>.inner-photo{margin-bottom:28px}.content>.inner-photo img{height:390px}.map-section{width:100%;max-width:none;padding-left:0!important;padding-right:0!important}.map-section>.wrap{width:100%!important;max-width:none!important;padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important}.map-card{display:block;width:100%!important;max-width:none!important;border-radius:0;background:#fff;border:1px solid #e5e7eb;border-radius:24px;overflow:hidden;box-shadow:0 16px 42px #0f172a14}.map-head{padding:26px 28px;display:flex;justify-content:space-between;gap:24px;align-items:center}.map-head h2{margin:5px 0 7px}.map-head p{margin:0;color:#64748b}.map-card iframe.awb-location-map{display:block!important;width:100%!important;max-width:none!important;min-width:100%!important;height:420px!important;border:0!important;box-sizing:border-box!important}.map-section{padding-top:20px}@media(max-width:700px){.map-head{align-items:flex-start;flex-direction:column}.map-card iframe{height:330px}}.inner-hero h1{font-size:50px;line-height:1.05;max-width:800px}.content{max-width:850px}.content p{font-size:17px;color:#475569}.content-card{padding:28px;border:1px solid var(--line);border-radius:18px;background:#fff;margin:18px 0}footer{background:#0b1220;color:#cbd5e1;padding:65px 0 22px}.footer-grid{display:grid;grid-template-columns:1.5fr .7fr .8fr 1fr;gap:45px}.footer-grid .logo{color:#fff}.footer-grid>div>a{display:block;margin:8px 0;color:#cbd5e1}.footer-grid>div>b{color:#fff}.copyright{border-top:1px solid #ffffff14;margin-top:40px;padding-top:20px;font-size:12px}@media(max-width:900px){.nav nav,.header-cta{display:none}.menu{display:block;border:0;background:transparent;font-size:22px}.hero-grid,.why-grid,.area-grid,.contact-grid,.inner-grid{grid-template-columns:1fr}.hero-art{min-height:390px}.services,.steps{grid-template-columns:1fr 1fr}.trust{grid-template-columns:1fr 1fr}.trust div:nth-child(2){border-right:0}.section-head,.cta-grid{display:block}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.wrap,.narrow{width:min(100% - 28px,1160px)}.hero{padding-top:48px}.hero h1{font-size:42px}.hero-art{min-height:320px}.orb{width:280px;height:280px}.photo-card{min-height:270px;width:88%}.house{font-size:100px}.floating-card{bottom:10px}.trust,.services,.benefits,.steps,.form-row,.footer-grid{grid-template-columns:1fr}.trust div{border-right:0;border-bottom:1px solid var(--line)}.section{padding:70px 0}.actions .btn{width:100%}.cta h2{font-size:34px}}
/* Phase 2.9 true layout families */
.intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:start}.intro-grid h2{font-size:clamp(36px,4.5vw,58px);line-height:1.04;margin:8px 0}.intro-grid .lead-copy{font-size:18px;margin-top:8px}.intro-rule{height:1px;background:var(--line);margin:28px 0 18px}.visual-band{padding:90px 0;background:#fff}.visual-band-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center}.visual-band .inner-photo{margin:0}.visual-band h2{font-size:clamp(34px,4vw,52px);line-height:1.05;letter-spacing:-.035em}.area-panel{min-height:350px;padding:45px;border-radius:28px;background:linear-gradient(145deg,var(--s),var(--p));color:#fff;display:flex;flex-direction:column;justify-content:flex-end}.area-panel b{font-size:46px}
.design-premium_split .hero{background:linear-gradient(120deg,#fff 0 58%,color-mix(in srgb,var(--p) 8%,#fff) 58%)}.design-premium_split .hero-grid{grid-template-columns:1fr 1fr}.design-premium_split .services{grid-template-columns:repeat(3,1fr)}.design-premium_split .intro{background:#fff}
.design-editorial .hero-grid{grid-template-columns:.82fr 1.18fr}.design-editorial .hero-art{min-height:560px}.design-editorial .photo-real{width:100%;transform:none}.design-editorial .photo-real img{height:560px}.design-editorial .floating-card{left:-34px;right:auto}.design-editorial .services{grid-template-columns:repeat(2,1fr)}.design-editorial .service-photo{height:300px}.design-editorial .intro-grid{grid-template-columns:1fr 1fr}.design-editorial .dark{background:#101827}
.design-local_pro .hero{background:linear-gradient(180deg,#f8fbff,#fff)}.design-local_pro .hero-grid{grid-template-columns:1.1fr .9fr}.design-local_pro .trust{box-shadow:0 18px 60px #0f172a12;border-radius:20px;overflow:hidden}.design-local_pro .services{grid-template-columns:repeat(3,1fr)}.design-local_pro .service-card{border-radius:24px}.design-local_pro .dark{border-radius:0}.design-local_pro .cta{background:var(--s)}
@media(max-width:900px){.intro-grid,.visual-band-grid{grid-template-columns:1fr;gap:34px}.design-editorial .hero-grid,.design-premium_split .hero-grid,.design-local_pro .hero-grid{grid-template-columns:1fr}.design-editorial .services,.design-premium_split .services,.design-local_pro .services{grid-template-columns:1fr 1fr}.design-editorial .hero-art{min-height:390px}.design-editorial .photo-real img{height:390px}}
@media(max-width:620px){.design-editorial .services,.design-premium_split .services,.design-local_pro .services{grid-template-columns:1fr}.visual-band{padding:62px 0}}

/* Phase 3.0 dynamic component library */
.hero-image_backdrop{position:relative;overflow:hidden;background:var(--ink);color:#fff}.hero-image_backdrop .hero-grid{min-height:640px;position:relative;z-index:2}.hero-image_backdrop .hero-art{position:absolute;inset:0 0 0 46%;opacity:.5}.hero-image_backdrop .photo-card,.hero-image_backdrop .photo-real{position:absolute;inset:0;width:100%;height:100%;transform:none;border-radius:0}.hero-image_backdrop .photo-real img{height:100%;filter:saturate(.86)}.hero-image_backdrop .hero-copy{padding:72px 0;max-width:670px}.hero-image_backdrop .hero-copy p{color:#e2e8f0}.hero-image_backdrop .floating-card{display:none}
.hero-offset_card .hero-grid{grid-template-columns:.88fr 1.12fr;gap:44px}.hero-offset_card .hero-art{padding:30px 0 30px 52px}.hero-offset_card .photo-card{transform:rotate(1.4deg);border-radius:34px}.hero-offset_card .floating-card{left:0;right:auto;bottom:40px}
.services-featured .services{grid-template-columns:1.25fr .75fr .75fr}.services-featured .service-card:first-child{grid-row:span 2}.services-featured .service-card:first-child .service-photo{height:420px}.services-featured .service-card:first-child h3{font-size:28px}
.services-alternating .services{display:flex;flex-direction:column;gap:24px}.services-alternating .service-card{display:grid;grid-template-columns:.9fr 1.1fr;min-height:260px}.services-alternating .service-card:nth-child(even){grid-template-columns:1.1fr .9fr}.services-alternating .service-card:nth-child(even) .service-photo{order:2}.services-alternating .service-photo{height:100%;min-height:260px}.services-alternating .service-pad{padding:38px!important;justify-content:center}
.process-timeline .process-grid{display:grid;grid-template-columns:1fr;max-width:900px;margin-left:auto}.process-timeline .process-card{display:grid;grid-template-columns:90px 1fr;align-items:start;border:0;border-left:2px solid var(--p);border-radius:0;padding:12px 0 38px 34px;box-shadow:none}
.faq-split .wrap{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;align-items:start}.faq-split .section-head{position:sticky;top:110px;text-align:left;margin:0}.faq-split .faq-list{margin:0;max-width:none}
.inner-proof{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.proof-row{display:grid;grid-template-columns:repeat(4,1fr);padding:18px 0;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.proof-row span{padding:0 18px;border-right:1px solid var(--line)}.proof-row span:last-child{border:0}
@media(max-width:900px){.hero-image_backdrop .hero-art{inset:0;opacity:.22}.hero-image_backdrop .hero-grid{min-height:590px}.hero-offset_card .hero-grid{grid-template-columns:1fr}.hero-offset_card .hero-art{padding:0}.services-featured .services{grid-template-columns:1fr 1fr}.services-featured .service-card:first-child{grid-column:1/-1;grid-row:auto}.services-alternating .service-card,.services-alternating .service-card:nth-child(even){grid-template-columns:1fr}.services-alternating .service-card:nth-child(even) .service-photo{order:0}.faq-split .wrap{grid-template-columns:1fr;gap:28px}.faq-split .section-head{position:static}.proof-row{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.services-featured .services,.proof-row{grid-template-columns:1fr}.services-featured .service-card:first-child{grid-column:auto}.services-featured .service-card:first-child .service-photo{height:260px}}


/* Phase 3.10.1 Unique Design DNA */
.dna-type-editorial_serif h1,.dna-type-editorial_serif h2,.dna-type-editorial_serif h3{font-family:Georgia,Times New Roman,serif}.dna-type-humanist{font-family:Segoe UI,Calibri,Arial,sans-serif}.dna-type-geometric{font-family:Trebuchet MS,Arial,sans-serif}.dna-type-compact_sans{font-family:Arial,sans-serif}.dna-type-classic{font-family:Verdana,Arial,sans-serif}
.dna-header-floating .site-header{top:14px;width:min(1160px,calc(100% - 32px));margin:auto;border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 35px #0f172a12}.dna-header-floating .nav{width:calc(100% - 32px);height:72px}.dna-header-compact .nav{height:66px}.dna-header-compact .logo-mark{width:36px;height:36px}.dna-header-bordered .site-header{border-bottom:3px solid color-mix(in srgb,var(--p) 45%,#fff);backdrop-filter:none}
.hero-wide_media .hero-grid{grid-template-columns:.78fr 1.22fr;gap:38px}.hero-wide_media .photo-card{width:100%;border-radius:12px}.hero-editorial .hero-grid{grid-template-columns:.9fr 1.1fr}.hero-editorial h1{font-size:clamp(48px,6vw,82px)}.hero-editorial .photo-card{width:92%;border-radius:4px}.hero-compact_banner .hero-grid{grid-template-columns:1.25fr .75fr;gap:42px}.hero-compact_banner .hero-art{min-height:340px}.hero-compact_banner .photo-card{min-height:320px;width:100%}
.services-compact_grid .services{grid-template-columns:repeat(2,1fr);gap:12px}.services-compact_grid .service-card{display:grid;grid-template-columns:120px 1fr}.services-compact_grid .service-photo{height:100%;min-height:150px}.services-border_rows .services{grid-template-columns:1fr;gap:0}.services-border_rows .service-card{display:grid;grid-template-columns:220px 1fr;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;padding:24px 0}.services-border_rows .service-photo{height:160px;border-radius:14px}
.process-numbered_band .process-grid{display:flex;gap:0;border:1px solid var(--line);border-radius:22px;overflow:hidden}.process-numbered_band .process-card{flex:1;border:0;border-right:1px solid var(--line);border-radius:0;box-shadow:none}.faq-boxed .faq{display:grid;grid-template-columns:1fr 1fr;gap:12px}.faq-boxed .faq details{margin:0}
.dna-layout-editorial_canvas .intro-grid{grid-template-columns:1.15fr .85fr}.dna-layout-editorial_canvas .section-head{border-bottom:1px solid var(--line);padding-bottom:24px}.dna-layout-local_authority .trust{border-radius:6px}.dna-layout-local_authority .service-card{box-shadow:none;border-width:2px}.dna-layout-modern_grid .why-grid{grid-template-columns:1fr 1fr}.dna-layout-modern_grid .benefits{grid-template-columns:1fr}.dna-layout-bold_blocks .why-section{background:var(--p)}.dna-layout-minimal_air .services-section{background:#fff}.dna-layout-minimal_air .service-card{box-shadow:none}.dna-layout-premium_frame main{background:#f8fafc}.dna-layout-premium_frame .section>.wrap,.dna-layout-premium_frame .visual-band>.wrap{background:#fff;border-radius:26px;padding:42px}.dna-layout-service_mosaic .services{gap:10px}.dna-layout-service_mosaic .service-card{border-radius:8px}.dna-layout-asymmetric_flow .intro-grid{grid-template-columns:.65fr 1.35fr}.dna-layout-asymmetric_flow .why-grid{grid-template-columns:1.2fr .8fr}.dna-layout-asymmetric_flow .area-grid{grid-template-columns:.7fr 1.3fr}.dna-layout-clean_corporate .service-card,.dna-layout-clean_corporate .lead{box-shadow:none}.dna-layout-clean_corporate .cta{background:var(--s)}.dna-layout-image_story .visual-band-grid{grid-template-columns:1.3fr .7fr}.dna-layout-image_story .visual-band .inner-photo img{height:460px}.dna-layout-compact_action .section{padding-block:58px}
.dna-space-compact .section{padding-block:56px}.dna-space-spacious .section{padding-block:96px}.dna-corners-square .service-card,.dna-corners-square .lead,.dna-corners-square .inner-photo,.dna-corners-square .photo-card,.dna-corners-square .map-card,.dna-corners-square .btn{border-radius:2px!important}.dna-corners-subtle .service-card,.dna-corners-subtle .lead,.dna-corners-subtle .inner-photo,.dna-corners-subtle .photo-card{border-radius:10px!important}.dna-corners-rounded .service-card,.dna-corners-rounded .lead,.dna-corners-rounded .inner-photo,.dna-corners-rounded .photo-card{border-radius:26px!important}.dna-corners-pill .btn{border-radius:999px!important}.dna-corners-pill .service-card{border-radius:30px!important}
.dna-image-soft_frame .photo-real,.dna-image-soft_frame .inner-photo{padding:10px;background:#fff;border:1px solid var(--line)}.dna-image-edge_to_edge .photo-card,.dna-image-edge_to_edge .inner-photo{border-radius:0!important;box-shadow:none!important}.dna-image-editorial .photo-real img,.dna-image-editorial .inner-photo img{filter:saturate(.78) contrast(1.04)}
.dna-cta-dark_panel .cta{background:var(--s)}.dna-cta-light_panel .cta{background:#f8fafc;color:var(--ink);border-block:1px solid var(--line)}.dna-cta-light_panel .cta p{color:var(--muted)}.dna-cta-split_panel .cta{background:linear-gradient(90deg,var(--s) 0 50%,var(--p) 50%)}
.dna-rhythm-alternating .services-section{background:#fff}.dna-rhythm-alternating .story-section{background:var(--soft)}.dna-rhythm-editorial .section-head{display:block;max-width:780px}.dna-rhythm-compact .section-head{margin-bottom:22px}
.dna-footer-compact footer{padding-top:34px}.dna-footer-compact .footer-grid{grid-template-columns:1.5fr 1fr 1fr}.dna-footer-compact .footer-grid>div:nth-child(3){display:none}.dna-footer-centered .footer-grid{display:block;text-align:center;max-width:760px}.dna-footer-centered .footer-grid>div{margin:18px 0}.dna-footer-centered .footer-grid .logo{justify-content:center}.dna-footer-split .footer-grid{grid-template-columns:1.8fr 1fr}.dna-footer-split .footer-grid>div:nth-child(2),.dna-footer-split .footer-grid>div:nth-child(3){display:none}
@media(max-width:900px){.hero-wide_media .hero-grid,.hero-editorial .hero-grid,.hero-compact_banner .hero-grid,.dna-layout-asymmetric_flow .why-grid,.dna-layout-asymmetric_flow .area-grid,.dna-layout-image_story .visual-band-grid{grid-template-columns:1fr!important}.services-compact_grid .service-card,.services-border_rows .service-card{grid-template-columns:1fr}.process-numbered_band .process-grid{display:grid}.faq-boxed .faq{grid-template-columns:1fr}.dna-cta-split_panel .cta{background:var(--s)}}


/* Phase 3.1.2 visual quality / screenshot fixes */
.hero{min-height:auto!important;padding:76px 0 58px!important;overflow:hidden}
.hero-grid{min-height:0!important;align-items:center!important}
.hero-copy{display:block!important;position:relative!important;z-index:3!important;opacity:1!important;visibility:visible!important;padding:0!important}
.hero-copy h1{display:block!important;color:var(--ink)!important;opacity:1!important;visibility:visible!important;margin:10px 0 20px!important;max-width:720px!important}
.hero-copy p{color:#475569!important;opacity:1!important;font-size:17px!important;line-height:1.72!important;margin:0 0 24px!important}
.hero-art{position:relative!important;inset:auto!important;opacity:1!important;min-height:430px!important}
.photo-card{position:relative!important;inset:auto!important;min-height:430px!important}
.photo-real{position:relative!important;inset:auto!important;width:100%!important;height:auto!important}
.photo-real img{width:100%!important;height:430px!important;object-fit:cover!important;filter:none!important}
.hero-offset_card .hero-art{padding:18px 0 18px 28px!important}
.hero-offset_card .photo-card{transform:none!important;border-radius:28px!important}
.hero-offset_card .floating-card{left:8px!important;bottom:28px!important}
.trust-strip{margin-top:38px!important}
.section{padding-top:72px!important;padding-bottom:72px!important}
.intro-grid{gap:64px!important}
.intro-grid .lead-copy{font-size:17px!important;line-height:1.75!important}
.services-section{background:#f7f9fc}
.services{align-items:stretch}
.service-card{min-width:0}
.service-card h3{font-size:18px!important;line-height:1.25!important}
.service-card p{font-size:14px!important;line-height:1.65!important;color:#536174!important}
.service-pad{padding:22px!important}
.dark{padding:76px 0!important}
.why-grid{gap:52px!important}
.why-grid h2{font-size:clamp(34px,4vw,50px)!important;line-height:1.05!important}
.why-cards{gap:16px!important}
.why-card{padding:22px!important;min-height:0!important}
.why-card p{font-size:14px!important;line-height:1.6!important}
.process-grid{margin-top:30px!important}
.process-card{padding:26px!important}
.visual-band{padding:72px 0!important}
.visual-band-grid{gap:52px!important}
.visual-band .inner-photo img{height:360px!important}
.area-grid{gap:52px!important}
.area .inner-photo img{height:340px!important}
.faq{padding-top:72px!important;padding-bottom:72px!important}
.faq-list{margin-top:28px!important}
.cta{padding:58px 0!important}
.contact{padding:72px 0!important}
.contact-grid{gap:48px!important}
.map-card iframe.awb-location-map{height:360px!important}
footer{padding-top:52px!important}
.footer-grid{padding-bottom:42px!important}

/* Prevent generated variants from creating accidental blank/low-contrast hero states */
.hero-image_backdrop{background:#fff!important;color:var(--ink)!important}
.hero-image_backdrop .hero-grid{min-height:0!important}
.hero-image_backdrop .hero-art{position:relative!important;opacity:1!important}
.hero-image_backdrop .hero-copy p{color:#475569!important}
.hero-image_backdrop .floating-card{display:block!important}

/* Internal pages: stronger readable composition */
.inner-hero{padding:64px 0!important}
.inner-grid{gap:52px!important;align-items:center!important}
.inner-hero h1{max-width:680px!important}
.inner-hero .lead-copy{font-size:17px!important;line-height:1.72!important}
.inner-photo img{height:360px!important}
.content{max-width:980px!important}
.content-card{padding:34px!important}
.content-card p{font-size:16px!important;line-height:1.8!important}
.proof-row{font-size:12px!important}
@media(max-width:900px){
 .hero{padding:52px 0 42px!important}
 .hero-grid{gap:34px!important}
 .hero-art,.photo-card{min-height:330px!important}
 .photo-real img{height:330px!important}
 .hero-offset_card .hero-art{padding:0!important}
 .section{padding-top:58px!important;padding-bottom:58px!important}
 .intro-grid,.visual-band-grid,.area-grid,.contact-grid,.inner-grid{gap:34px!important}
 .why-grid{gap:34px!important}
}
@media(max-width:600px){
 .hero-copy h1{font-size:40px!important}
 .hero-art,.photo-card{min-height:280px!important}
 .photo-real img{height:280px!important}
 .section{padding-top:48px!important;padding-bottom:48px!important}
 .visual-band .inner-photo img,.area .inner-photo img,.inner-photo img{height:270px!important}
 .map-card iframe.awb-location-map{height:300px!important}
}

/* Phase 3.3.2 comprehensive mobile responsive layer */
.nav-toggle{display:none;background:transparent;border:0;padding:10px;margin:0;cursor:pointer;position:relative;z-index:1002}
.nav-toggle span{display:block;width:26px;height:2px;background:currentColor;margin:6px 0;transition:transform .22s ease,opacity .22s ease}
body.nav-open{overflow:hidden}
img,svg,video,iframe{max-width:100%}
input,select,textarea,button{max-width:100%}
@media(max-width:900px){
 .container{width:min(100% - 32px,1180px)!important}
 header .nav{min-height:68px!important;position:relative!important}
 .brand{max-width:calc(100% - 70px)!important;min-width:0!important}
 .brand-name{font-size:18px!important;white-space:normal!important;line-height:1.15!important}
 .nav-toggle{display:block!important;margin-left:auto!important}
 .nav-links{
   display:none!important;position:fixed!important;top:68px!important;left:0!important;right:0!important;bottom:0!important;
   z-index:1000!important;background:#fff!important;padding:24px 20px 36px!important;overflow-y:auto!important;
   flex-direction:column!important;align-items:stretch!important;gap:4px!important;border-top:1px solid #e8edf3!important;
   box-shadow:0 20px 40px rgba(15,23,42,.12)!important
 }
 .nav-links.is-open{display:flex!important}
 .nav-links a{display:block!important;padding:14px 12px!important;font-size:17px!important;line-height:1.3!important;border-radius:10px!important;color:var(--ink)!important}
 .nav-links .btn,.nav-links a.btn{width:100%!important;text-align:center!important;margin-top:8px!important}
 .nav-toggle.is-open span:nth-child(1){transform:translateY(8px) rotate(45deg)}
 .nav-toggle.is-open span:nth-child(2){opacity:0}
 .nav-toggle.is-open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
 .hero-grid,.intro-grid,.why-grid,.visual-band-grid,.area-grid,.contact-grid,.inner-grid{grid-template-columns:1fr!important}
 .hero{padding:42px 0 34px!important}
 .hero-copy{order:1!important}
 .hero-art{order:2!important;padding:0!important;min-height:0!important}
 .hero-copy h1{font-size:clamp(36px,10vw,52px)!important;line-height:1.02!important;overflow-wrap:anywhere!important}
 .hero-copy p{font-size:16px!important;line-height:1.65!important}
 .hero-actions{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important}
 .hero-actions .btn{width:100%!important;text-align:center!important}
 .photo-card,.hero-art{min-height:0!important}
 .photo-real img{height:320px!important}
 .floating-card{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;margin:-34px 16px 0!important;width:auto!important}
 .trust-strip{grid-template-columns:1fr!important;gap:10px!important;margin-top:28px!important}
 .trust-item{min-height:0!important}
 .section{padding:52px 0!important}
 .section-head{max-width:100%!important}
 .section-head h2,.intro-grid h2,.why-grid h2,.area-grid h2,.contact h2,.visual-band h2{font-size:clamp(30px,8vw,42px)!important;line-height:1.08!important}
 .services{grid-template-columns:1fr!important}
 .service-card{width:100%!important}
 .service-card img{height:220px!important}
 .why-cards,.process-grid{grid-template-columns:1fr!important}
 .why-card,.process-card{min-height:0!important}
 .visual-band .inner-photo img,.area .inner-photo img,.inner-photo img{height:300px!important}
 .area-grid .inner-photo,.visual-band .inner-photo{order:2!important}
 .faq-grid{grid-template-columns:1fr!important}
 .faq-list{width:100%!important}
 .faq-item summary{font-size:16px!important;padding-right:32px!important}
 .cta-inner{display:block!important;text-align:center!important}
 .cta-inner .btn{display:block!important;width:100%!important;margin-top:18px!important}
 .contact-grid{gap:28px!important}
 .contact-card,.content-card{padding:24px!important}
 .map-card{width:100%!important;overflow:hidden!important}
 .map-card iframe.awb-location-map{height:300px!important;width:100%!important}
 .footer-grid{grid-template-columns:1fr!important;gap:28px!important}
 .footer-bottom{display:block!important;text-align:center!important}
 .footer-bottom>*{margin:6px 0!important}
 .inner-hero{padding:46px 0!important}
 .inner-hero h1{font-size:clamp(34px,9vw,48px)!important;overflow-wrap:anywhere!important}
 .inner-photo img{height:300px!important}
 .proof-row{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
 .sticky-call{display:flex!important}
 table{display:block!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
}
@media(max-width:600px){
 .container{width:min(100% - 24px,1180px)!important}
 header .nav{min-height:64px!important}
 .nav-links{top:64px!important;padding:18px 12px 30px!important}
 .brand-name{font-size:16px!important}
 .hero{padding:34px 0 30px!important}
 .hero-copy h1{font-size:36px!important}
 .photo-real img{height:250px!important}
 .section{padding:44px 0!important}
 .service-card img{height:200px!important}
 .visual-band .inner-photo img,.area .inner-photo img,.inner-photo img{height:240px!important}
 .service-pad,.why-card,.process-card,.contact-card,.content-card{padding:20px!important}
 .map-card iframe.awb-location-map{height:260px!important}
 .btn{min-height:46px!important;padding:12px 16px!important}
 input,select,textarea{font-size:16px!important}
}

/* Phase 3.3.3 definitive mobile header/nav */
@media(max-width:900px){
 /* Phase 4.5A1: keep desktop phone CTA out of the compact mobile header.
    The same call action remains available inside the hamburger menu and in the sticky Call Now bar. */
 header.cdh .cdh-action,header.cdh .cdh-desktop>a.btn{display:none!important}
 header{position:relative!important;z-index:9999!important;width:100%!important}
 header .nav{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:64px!important;padding-top:8px!important;padding-bottom:8px!important;gap:10px!important}
 header .brand{display:flex!important;align-items:center!important;gap:10px!important;flex:1 1 auto!important;max-width:calc(100% - 58px)!important;min-width:0!important}
 header .brand-mark{flex:0 0 auto!important}
 header .brand-copy{min-width:0!important;max-width:100%!important}
 header .brand-name{font-size:18px!important;line-height:1.15!important;white-space:normal!important;overflow-wrap:anywhere!important;margin:0!important}
 header .brand-sub{font-size:12px!important;line-height:1.35!important;margin-top:3px!important;display:block!important}
 header .nav-toggle,header .menu-toggle,header .mobile-menu-toggle,header .awb-mobile-toggle{
  display:flex!important;flex:0 0 46px!important;width:46px!important;height:46px!important;padding:10px!important;
  align-items:center!important;justify-content:center!important;flex-direction:column!important;background:transparent!important;
  border:0!important;border-radius:10px!important;color:var(--ink,#111827)!important;cursor:pointer!important;position:relative!important;z-index:10002!important
 }
 header .nav-toggle span,header .menu-toggle span,header .mobile-menu-toggle span,header .awb-mobile-toggle span{
  display:block!important;width:25px!important;height:2px!important;background:currentColor!important;margin:3px 0!important;border-radius:2px!important
 }
 header .nav-links,header .site-nav,header nav ul,header nav .links,header .awb-mobile-nav{
  display:none!important;position:absolute!important;top:100%!important;left:0!important;right:0!important;width:100%!important;
  max-height:calc(100vh - 64px)!important;overflow-y:auto!important;background:#fff!important;padding:12px!important;margin:0!important;
  border-top:1px solid #e5e7eb!important;box-shadow:0 18px 35px rgba(15,23,42,.14)!important;z-index:10001!important;
  flex-direction:column!important;align-items:stretch!important;gap:2px!important;list-style:none!important
 }
 header .nav-links.is-open,header .site-nav.is-open,header nav ul.is-open,header nav .links.is-open,header .awb-mobile-nav.is-open{display:flex!important}
 header .awb-mobile-nav a,header .nav-links a,header .site-nav a,header nav ul a{
  display:block!important;width:100%!important;padding:13px 14px!important;margin:0!important;border-radius:9px!important;
  font-size:16px!important;line-height:1.25!important;text-align:left!important;white-space:normal!important;color:var(--ink,#111827)!important
 }
 header .awb-mobile-nav .btn,header .nav-links .btn,header .site-nav .btn{margin-top:6px!important;text-align:center!important}
 header .nav-toggle.is-open span:nth-child(1),header .awb-mobile-toggle.is-open span:nth-child(1){transform:translateY(8px) rotate(45deg)!important}
 header .nav-toggle.is-open span:nth-child(2),header .awb-mobile-toggle.is-open span:nth-child(2){opacity:0!important}
 header .nav-toggle.is-open span:nth-child(3),header .awb-mobile-toggle.is-open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)!important}
 body{overflow-x:hidden!important}
}
/* Phase 3.11C6 — reliable mobile menu for Creative Director headers */
.awb-cdh-mobile-nav{display:none}
@media(max-width:900px){
 header.cdh>.awb-cdh-mobile-nav{display:none!important;position:absolute!important;top:100%!important;left:0!important;right:0!important;width:100%!important;max-height:calc(100vh - 60px)!important;overflow-y:auto!important;background:#fff!important;padding:12px!important;margin:0!important;border-top:1px solid #e5e7eb!important;box-shadow:0 18px 35px rgba(15,23,42,.16)!important;z-index:10020!important;flex-direction:column!important;gap:2px!important}
 header.cdh>.awb-cdh-mobile-nav.is-open{display:flex!important}
 header.cdh>.awb-cdh-mobile-nav a{display:block!important;width:100%!important;padding:13px 14px!important;margin:0!important;border-radius:9px!important;font-size:16px!important;font-weight:750!important;line-height:1.25!important;text-align:left!important;text-decoration:none!important;color:var(--ink,#111827)!important;background:transparent!important}
 header.cdh>.awb-cdh-mobile-nav a:hover{background:#f3f4f6!important}
 header.cdh>.awb-cdh-mobile-nav .btn,header.cdh>.awb-cdh-mobile-nav .awb-mobile-call{margin-top:7px!important;text-align:center!important;background:var(--p)!important;color:#fff!important}
 header.cdh .menu{position:relative!important;z-index:10021!important;cursor:pointer!important}
}
@media(max-width:480px){
 header .brand-name{font-size:16px!important}
 header .brand-sub{font-size:11px!important;display:none!important}
 header .nav{min-height:60px!important}
 header .nav-links,header .site-nav,header nav ul,header nav .links,header .awb-mobile-nav{max-height:calc(100vh - 60px)!important}
}
/* Phase 3.11 Multi-Template Engine */
body[class*=" cr-"]{background:var(--surface,#fff)}
.cr-template-cinematic_full_bleed .hero{min-height:82vh;background:var(--s);color:#fff;display:flex;align-items:center}.cr-template-cinematic_full_bleed .hero-copy>p,.cr-template-cinematic_full_bleed .hero .micro{color:#d1d5db}.cr-template-cinematic_full_bleed .hero-grid{grid-template-columns:.72fr 1.28fr}.cr-template-cinematic_full_bleed .photo-card{width:100%;border-radius:0}.cr-template-cinematic_full_bleed .hero-art{margin-right:calc((100vw - min(1160px,92vw))/ -2)}
.cr-template-editorial_luxury h1,.cr-template-editorial_luxury h2{font-family:Georgia,serif;font-weight:500}.cr-template-editorial_luxury .hero{background:var(--soft)}.cr-template-editorial_luxury .service-card{box-shadow:none;border:0;border-top:1px solid var(--ink);border-radius:0}
.cr-template-contractor_direct .hero{padding:42px 0;background:var(--p);color:#fff}.cr-template-contractor_direct .hero-copy>p,.cr-template-contractor_direct .hero .micro{color:#fff}.cr-template-contractor_direct .service-card{border-radius:3px;border-left:5px solid var(--a);box-shadow:none}
.cr-template-modern_architectural .section{border-top:1px solid var(--line)}.cr-template-modern_architectural .hero-grid{grid-template-columns:1fr 1fr}.cr-template-modern_architectural .photo-card,.cr-template-modern_architectural .service-card{border-radius:0;box-shadow:none}
.cr-template-dark_industrial{background:#111}.cr-template-dark_industrial .hero,.cr-template-dark_industrial .why-section,.cr-template-dark_industrial footer{background:#111;color:#fff}.cr-template-dark_industrial .soft,.cr-template-dark_industrial .section{background:#18181b;color:#f5f5f5}.cr-template-dark_industrial .service-card,.cr-template-dark_industrial .lead{background:#27272a;color:#fff;border-color:#3f3f46}
.cr-template-warm_local .hero{background:var(--soft)}.cr-template-warm_local .photo-card{transform:rotate(1.5deg)}.cr-template-warm_local .service-card{box-shadow:0 18px 45px #3f2d2014}
.cr-template-minimal_swiss .eyebrow{letter-spacing:.22em}.cr-template-minimal_swiss .hero-art{display:none}.cr-template-minimal_swiss .hero-grid{grid-template-columns:1fr;max-width:900px}.cr-template-minimal_swiss .service-photo{display:none}.cr-template-minimal_swiss .service-card{box-shadow:none;border:0;border-top:2px solid var(--ink);border-radius:0}
.cr-template-bold_geometric .hero{background:linear-gradient(135deg,var(--p) 0 58%,var(--soft) 58%)}.cr-template-bold_geometric h1{font-weight:950}.cr-template-bold_geometric .service-card{border:3px solid var(--ink);box-shadow:10px 10px 0 var(--a);border-radius:0}
.cr-template-magazine_asymmetric .hero-grid{grid-template-columns:.82fr 1.18fr}.cr-template-magazine_asymmetric .hero-copy{padding-top:80px}.cr-template-magazine_asymmetric .service-card:nth-child(1){grid-column:span 2}.cr-template-magazine_asymmetric .service-card:nth-child(1) .service-photo{height:420px}
.cr-template-premium_frame .hero-grid,.cr-template-premium_frame .section>.wrap{border:1px solid var(--line);padding:46px;background:#fff}.cr-template-premium_frame .hero{background:var(--soft)}
.cr-template-image_story .visual-band{background:var(--s);color:#fff}.cr-template-image_story .service-photo{height:330px}.cr-template-image_story .hero-art{min-height:600px}
.cr-template-conversion_compact .hero{padding:36px 0}.cr-template-conversion_compact .section{padding:52px 0}.cr-template-conversion_compact .hero-art{min-height:300px}
.cr-template-heritage_classic h1,.cr-template-heritage_classic h2,.cr-template-heritage_classic h3{font-family:Georgia,serif}.cr-template-heritage_classic .site-header{border-bottom:3px double var(--ink)}.cr-template-heritage_classic .service-card{border-radius:0;box-shadow:none}
.cr-template-tech_clean .hero{background:linear-gradient(180deg,var(--soft),#fff)}.cr-template-tech_clean .service-card{box-shadow:none;border:1px solid color-mix(in srgb,var(--p) 24%,#fff)}
.cr-template-organic_soft .hero,.cr-template-organic_soft .soft{background:var(--soft)}.cr-template-organic_soft .photo-card,.cr-template-organic_soft .service-card,.cr-template-organic_soft .benefit{border-radius:32px}
.cr-template-monochrome_pro{filter:saturate(.12)}.cr-template-monochrome_pro .btn-primary{background:#111}
.cr-template-color_block .hero{background:var(--p);color:#fff}.cr-template-color_block .hero-copy>p{color:#fff}.cr-template-color_block .services-section{background:var(--a)}.cr-template-color_block .why-section{background:var(--s)}
.cr-template-split_showcase .hero-grid{grid-template-columns:1fr 1fr}.cr-template-split_showcase .hero-art{min-height:650px}.cr-template-split_showcase .photo-card{height:100%;width:100%;border-radius:0}
.cr-template-local_authority .hero{background:var(--soft)}.cr-template-local_authority .trust-strip{border:2px solid var(--p)}.cr-template-local_authority .why-section{background:var(--p)}
.cr-template-studio_cards .hero{background:var(--soft)}.cr-template-studio_cards .section{background:var(--soft)}.cr-template-studio_cards .section>.wrap{background:#fff;border-radius:28px;padding:48px}

/* Hero geometry: deliberately obvious differences */
.cr-hero-full_viewport .hero{min-height:88vh;display:flex;align-items:center}.cr-hero-full_width_short .hero{padding:30px 0}.cr-hero-full_width_short .hero-art{min-height:240px}.cr-hero-full_width_short .photo-real img{height:260px}.cr-hero-split_left .hero-copy{order:2}.cr-hero-split_left .hero-art{order:1}.cr-hero-centered_photo .hero-grid{display:block;text-align:center;max-width:1000px}.cr-hero-centered_photo .hero-art{margin:36px auto 0;max-width:920px}.cr-hero-centered_photo .actions{justify-content:center}.cr-hero-boxed .hero-grid{background:var(--soft);padding:55px;border-radius:26px;border:1px solid var(--line)}.cr-hero-editorial h1{font-family:Georgia,serif;font-weight:500}.cr-hero-overlap_card .hero-copy{position:relative;z-index:4;background:var(--surface);padding:44px;margin-right:-110px;box-shadow:0 30px 80px #0002}.cr-hero-text_only .hero-art{display:none}.cr-hero-text_only .hero-grid{grid-template-columns:1fr;max-width:950px}.cr-hero-diagonal .hero{background:linear-gradient(115deg,var(--soft) 0 55%,var(--p) 55%)}

/* Service systems */
.cr-services-horizontal_rows .services{display:block}.cr-services-horizontal_rows .service-card{display:grid;grid-template-columns:300px 1fr;margin:16px 0;box-shadow:none}.cr-services-masonry .services{grid-template-columns:1.35fr .8fr .8fr}.cr-services-masonry .service-card:first-child .service-photo{height:440px}.cr-services-feature_plus_grid .service-card:first-child{grid-column:span 2}.cr-services-feature_plus_grid .service-card:first-child .service-photo{height:380px}.cr-services-alternating .services{display:block}.cr-services-alternating .service-card{display:grid;grid-template-columns:1fr 1fr;margin:26px 0}.cr-services-alternating .service-card:nth-child(even) .service-photo{order:2}.cr-services-minimal_list .service-photo{display:none}.cr-services-minimal_list .service-card{box-shadow:none;border:0;border-bottom:1px solid var(--line);border-radius:0}.cr-services-numbered .service-card{counter-increment:svc}.cr-services-numbered .service-card h3:before{content:"0" counter(svc) " ";color:var(--p);font-size:.75em}.cr-services-bento .services{grid-template-columns:2fr 1fr}.cr-services-bento .service-card:first-child{grid-row:span 2}

/* Why / CTA / typography / sizing */
.cr-why-light_cards .why-section{background:var(--soft);color:var(--ink)}.cr-why-light_cards .benefit{background:#fff;color:var(--ink);border-color:var(--line)}.cr-why-stats_band .why-grid{grid-template-columns:1fr}.cr-why-stats_band .benefits{grid-template-columns:repeat(5,1fr)}.cr-why-minimal_list .why-section{background:#fff;color:var(--ink)}.cr-why-minimal_list .benefit{background:#fff;color:var(--ink);border:0;border-bottom:1px solid var(--line);border-radius:0}
.cr-typography-serif_editorial h1,.cr-typography-serif_editorial h2,.cr-typography-serif_editorial h3{font-family:Georgia,serif}.cr-typography-geometric{font-family:"Trebuchet MS",Arial,sans-serif}.cr-typography-humanist{font-family:"Segoe UI",Arial,sans-serif}.cr-typography-classic{font-family:Verdana,Arial,sans-serif}.cr-typography-condensed_display h1,.cr-typography-condensed_display h2{font-family:"Arial Narrow",Arial,sans-serif;letter-spacing:-.04em}
.cr-density-compact .section{padding-block:48px}.cr-density-spacious .section{padding-block:112px}.cr-radius-square .service-card,.cr-radius-square .photo-card,.cr-radius-square .btn{border-radius:0!important}.cr-radius-rounded .service-card,.cr-radius-rounded .photo-card{border-radius:30px!important}.cr-radius-pill .btn{border-radius:999px!important}
.cr-content_width-narrow .wrap{width:min(920px,92vw)}.cr-content_width-wide .wrap{width:min(1380px,94vw)}.cr-content_width-full .wrap{width:min(1600px,96vw)}
.cr-image_treatment-edge_to_edge .service-photo img,.cr-image_treatment-edge_to_edge .photo-card img{border-radius:0}.cr-image_treatment-framed img{border:10px solid #fff;box-shadow:0 15px 40px #0002}.cr-image_treatment-editorial_crop .service-photo img{object-position:35% 50%}.cr-image_treatment-rounded img{border-radius:28px}.cr-image_treatment-duotone_like img{filter:grayscale(.8) contrast(1.1)}
.cr-cta-full_dark .cta{background:#09090b}.cr-cta-boxed .cta{background:#fff;color:var(--ink)}.cr-cta-boxed .cta-grid{background:var(--s);color:#fff;padding:46px;border-radius:24px}.cr-cta-split_color .cta{background:linear-gradient(90deg,var(--s) 0 50%,var(--p) 50%)}.cr-cta-minimal .cta{background:var(--soft);color:var(--ink);border-block:1px solid var(--line)}
.cr-footer-centered .footer-grid{display:block;text-align:center;max-width:760px}.cr-footer-minimal footer{padding:30px 0}.cr-footer-split .footer-grid{grid-template-columns:2fr 1fr}.cr-footer-split .footer-grid>div:nth-child(2){display:none}
@media(max-width:900px){.cr-template-cinematic_full_bleed .hero-grid,.cr-template-split_showcase .hero-grid,.cr-services-horizontal_rows .service-card,.cr-services-alternating .service-card{grid-template-columns:1fr}.cr-hero-overlap_card .hero-copy{margin-right:0}.cr-hero-split_left .hero-copy,.cr-hero-split_left .hero-art{order:initial}.cr-services-masonry .services,.cr-services-bento .services{grid-template-columns:1fr}.cr-why-stats_band .benefits{grid-template-columns:1fr}.cr-template-magazine_asymmetric .service-card:nth-child(1){grid-column:auto}}/* Phase 3.12 independent templates — quality floor */
.pit{font-size:16px}.pit h1{font-size:clamp(48px,6vw,86px);line-height:.98;letter-spacing:-.045em}.pit h2{font-size:clamp(34px,4vw,56px);line-height:1.05}.pit p{font-size:17px;line-height:1.7}.pit .service-card p,.pit .benefit p,.pit .step p,.pit .faq p{font-size:15px}.pit .section{padding:88px 0}.pit-hero-img{width:100%;height:100%;object-fit:cover;display:block}.pit-hero-placeholder{min-height:420px;background:var(--soft);display:grid;place-items:center;font-weight:800}
.pit-1 .pit-cinema{position:relative;min-height:78vh;display:flex;align-items:center;color:#fff;overflow:hidden}.pit-1 .pit-cinema-media,.pit-1 .pit-cinema-shade{position:absolute;inset:0}.pit-1 .pit-cinema-shade{background:linear-gradient(90deg,#07111de8 0 48%,#07111d35 78%,transparent)}.pit-1 .pit-cinema .wrap{position:relative;z-index:2}.pit-1 .pit-hero-copy{max-width:650px}.pit-1 .pit-hero-copy p{color:#e5e7eb}.pit-1 .pit-proof{margin-top:-42px;position:relative;z-index:4}.pit-1 .pit-image-why{background:var(--s);color:#fff}.pit-1 .pit-image-why>.wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
.pit-2{font-family:Georgia,serif}.pit-2 .pit-editorial-hero{padding:75px 0 25px}.pit-2 .pit-editorial-hero>.wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:end}.pit-2 figure{margin:0}.pit-2 figure img{height:620px}.pit-2 figcaption{font:12px Arial,sans-serif;margin-top:8px}.pit-2 .pit-index{font:700 12px Arial,sans-serif;letter-spacing:.18em}.pit-2 .pit-editorial-intro>.wrap{display:grid;grid-template-columns:100px 1fr 1fr;gap:40px}.pit-2 .service-card{border:0;border-top:1px solid var(--ink);border-radius:0;box-shadow:none}
.pit-3 .pit-direct-hero{background:var(--p);color:#fff;padding:52px 0}.pit-3 .pit-direct-hero>.wrap{display:grid;grid-template-columns:1fr .9fr;gap:45px;align-items:center}.pit-3 .pit-direct-photo{height:500px;border:8px solid #fff}.pit-3 .pit-direct-proof .trust{transform:none;margin-top:30px;color:var(--ink)}.pit-3 .pit-direct-services{padding:70px 0}.pit-3 .service-card{border-radius:2px;border-left:5px solid var(--a);box-shadow:none}.pit-3 .pit-direct-why{background:#111827;color:#fff;padding:80px 0}.pit-3 .pit-direct-why>.wrap{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px}
.pit-4 .pit-grid-hero{display:grid;grid-template-columns:1.05fr .95fr;grid-template-rows:minmax(420px,65vh) auto}.pit-4 .pit-grid-a{padding:7vw;display:flex;align-items:center}.pit-4 .pit-grid-b{overflow:hidden}.pit-4 .pit-grid-c{padding:28px 7vw;background:var(--s);color:#fff;display:flex;justify-content:space-between}.pit-4 .pit-grid-d{padding:0 5vw;background:var(--soft)}.pit-4 .pit-grid-d .trust{margin:0;transform:none}.pit-4 .pit-grid-services .pit-grid-heading{display:grid;grid-template-columns:1fr 1fr;gap:80px}.pit-4 .service-card{border-radius:0;box-shadow:none}
.pit-5{background:#0a0a0b;color:#f5f5f5}.pit-5 .section,.pit-5 .pit-area{background:#111214;color:#f5f5f5}.pit-5 .pit-dark-hero{padding:80px 0}.pit-5 .pit-dark-hero>.wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:55px}.pit-5 .pit-dark-media{height:580px}.pit-5 .pit-dark-stats .trust{background:#18181b;color:#fff;border-color:#333;transform:none;margin:0}.pit-5 .service-card,.pit-5 .benefit,.pit-5 .step,.pit-5 details{background:#18181b;color:#fff;border-color:#333;box-shadow:none}.pit-5 .pit-dark-why>.wrap{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px}
.pit-6{background:#fffaf2}.pit-6 .pit-warm-hero{padding:70px 0}.pit-6 .pit-warm-hero>.wrap{position:relative;min-height:620px}.pit-6 .pit-warm-photo{position:absolute;inset:0 0 0 28%;overflow:hidden;border-radius:32px}.pit-6 .pit-warm-card{position:absolute;left:0;top:70px;width:48%;background:#fff;padding:48px;border-radius:26px;box-shadow:0 30px 80px #4a352522}.pit-6 .pit-warm-story>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:80px}.pit-6 .service-card{border-radius:26px}
.pit-7 .pit-swiss-hero{padding:110px 0 55px;border-bottom:2px solid var(--ink)}.pit-7 .pit-swiss-hero .pit-hero-copy{max-width:980px}.pit-7 .pit-swiss-meta{display:flex;gap:50px;margin-top:55px;font-size:12px;text-transform:uppercase}.pit-7 .pit-swiss-image img{height:520px}.pit-7 .pit-swiss-num{font-size:12px;font-weight:900}.pit-7 .service-photo{display:none}.pit-7 .service-card,.pit-7 .benefit,.pit-7 .step{border:0;border-top:2px solid var(--ink);border-radius:0;box-shadow:none;background:transparent}
.pit-8 .pit-bold-hero{position:relative;overflow:hidden;padding:70px 0;background:var(--soft)}.pit-8 .pit-bold-hero>.wrap{display:grid;grid-template-columns:1fr .9fr;gap:40px;align-items:center;position:relative}.pit-8 .pit-bold-image{height:520px;border:4px solid var(--ink);box-shadow:18px 18px 0 var(--a)}.pit-8 .pit-bold-proof .trust{transform:none;margin:0;border:3px solid var(--ink);border-radius:0}.pit-8 .service-card{border:3px solid var(--ink);border-radius:0;box-shadow:10px 10px 0 var(--a)}.pit-8 .pit-bold-why{background:var(--a);padding:85px 0}.pit-8 .pit-bold-why>.wrap{display:grid;grid-template-columns:.5fr 1.5fr;gap:60px}
.pit-9 .pit-mag-hero{padding:70px 0}.pit-9 .pit-mag-hero h1{font-size:clamp(64px,9vw,132px);max-width:1200px}.pit-9 .pit-mag-bottom{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin:35px 0}.pit-9 .pit-mag-photo{height:650px}.pit-9 .pit-mag-intro>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:100px}.pit-9 .pit-mag-services .services{grid-template-columns:1.4fr .8fr .8fr}.pit-9 .pit-mag-services .service-card:first-child{grid-row:span 2}.pit-9 .pit-mag-why>.wrap{display:grid;grid-template-columns:180px 1fr;gap:60px}
.pit-10 .pit-split-hero{display:grid;grid-template-columns:1fr 1fr;min-height:720px}.pit-10 .pit-split-copy{padding:8vw 6vw 50px;display:flex;flex-direction:column;justify-content:center;background:var(--soft)}.pit-10 .pit-split-media{overflow:hidden}.pit-10 .pit-split-trust .trust{transform:none;margin-top:35px;grid-template-columns:1fr 1fr}.pit-10 .pit-split-services>.wrap{display:grid;grid-template-columns:.55fr 1.45fr;gap:60px}.pit-10 .pit-split-why{background:var(--s);color:#fff;padding:90px 0}.pit-10 .pit-split-why>.wrap{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px}
.pit-cta{padding:65px 0;background:var(--p);color:#fff}.pit-cta>.wrap{display:flex;justify-content:space-between;gap:50px;align-items:center}.pit-cta h2{font-size:clamp(32px,4vw,52px);margin:8px 0}.pit-contact{background:var(--surface,#fff)}
@media(max-width:900px){.pit h1{font-size:clamp(42px,10vw,64px)}.pit-1 .pit-image-why>.wrap,.pit-2 .pit-editorial-hero>.wrap,.pit-2 .pit-editorial-intro>.wrap,.pit-3 .pit-direct-hero>.wrap,.pit-3 .pit-direct-why>.wrap,.pit-4 .pit-grid-services .pit-grid-heading,.pit-5 .pit-dark-hero>.wrap,.pit-5 .pit-dark-why>.wrap,.pit-6 .pit-warm-story>.wrap,.pit-8 .pit-bold-hero>.wrap,.pit-8 .pit-bold-why>.wrap,.pit-9 .pit-mag-bottom,.pit-9 .pit-mag-intro>.wrap,.pit-9 .pit-mag-why>.wrap,.pit-10 .pit-split-services>.wrap,.pit-10 .pit-split-why>.wrap{grid-template-columns:1fr}.pit-4 .pit-grid-hero,.pit-10 .pit-split-hero{grid-template-columns:1fr}.pit-6 .pit-warm-hero>.wrap{min-height:auto}.pit-6 .pit-warm-photo,.pit-6 .pit-warm-card{position:relative;inset:auto;width:100%}.pit-6 .pit-warm-photo{height:420px}.pit-6 .pit-warm-card{margin-top:-50px}.pit-9 .pit-mag-photo{height:430px}.pit-10 .pit-split-media{height:420px}.pit-cta>.wrap{display:block}}/* Phase 3.13 — template-owned components */
.tic{font-size:16px}.tic h1{font-size:clamp(46px,6vw,84px);line-height:.98;letter-spacing:-.045em}.tic h2{font-size:clamp(32px,4vw,54px);line-height:1.06;letter-spacing:-.025em}.tic h3{font-size:20px;line-height:1.2}.tic p{font-size:17px;line-height:1.65}.tic>section{padding:86px 0}.tic-hero-img,.tic-service-img,.tic-area-img{width:100%;height:100%;object-fit:cover;display:block}.tic-img-empty{min-height:280px;background:var(--soft);display:grid;place-items:center}.tic-area>.wrap,.tic-contact>.wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}.tic-area-media{height:430px}.tic-cta{background:var(--p);color:#fff}.tic-cta>.wrap{display:flex;justify-content:space-between;gap:60px;align-items:center}.tic-map{padding-top:0!important}.tic-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.tic-process-card{padding:28px;border-top:3px solid var(--p);background:#fff}.tic-process-card>span{font-weight:900;color:var(--p)}.tic-faq-detail{border-bottom:1px solid var(--line);padding:18px 0}.tic-faq-detail summary{display:flex;justify-content:space-between;font-weight:800;cursor:pointer}.tic-faq-row{display:grid;grid-template-columns:80px 1fr;gap:30px;padding:28px 0;border-top:1px solid var(--line)}
/* 1 cinematic */
.tic1 .tic1-hero{min-height:82vh;position:relative;display:flex;align-items:center;color:#fff;padding:0}.tic1-bg,.tic1-shade{position:absolute;inset:0}.tic1-shade{background:linear-gradient(90deg,#07111df0 0 48%,#07111d55 72%,transparent)}.tic1-hero>.wrap{position:relative;z-index:2}.tic1 .tic-hero-copy{max-width:670px}.tic1 .tic-hero-copy p{color:#eef2f7}.tic1-trust{padding:0!important;margin-top:-38px;position:relative;z-index:3}.tic1-trust>.wrap{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;color:var(--ink);box-shadow:0 18px 50px #0002}.tic-trust-box{padding:22px}.tic-trust-box span{display:block;font-size:13px}.tic1-services header{max-width:760px}.tic1-service-list{margin-top:45px}.tic1-service{display:grid;grid-template-columns:1.15fr .85fr;min-height:360px;border-top:1px solid var(--line)}.tic1-service:nth-child(even){grid-template-columns:.85fr 1.15fr}.tic1-service:nth-child(even) .tic1-service-media{order:2}.tic1-service>div:last-child{padding:55px}.tic1-service-media{min-height:360px}.tic1-service-media img{height:100%}.tic1-service span{font-size:12px;font-weight:900}.tic1-why{background:var(--s);color:#fff}.tic1-why>.wrap{display:grid;gap:32px}.tic-benefit-story{display:grid;grid-template-columns:55px 1fr;gap:20px;padding:25px 0;border-top:1px solid #ffffff33}
/* 2 editorial */
.tic2{font-family:Georgia,serif}.tic2-hero>.wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;align-items:end}.tic2-hero figure{margin:0}.tic2-hero figure img{height:650px}.tic2-hero figcaption{font:12px Arial,sans-serif;margin-top:8px}.tic2-manifesto>.wrap{display:grid;grid-template-columns:140px 1fr 1fr;gap:45px}.tic2-heading{display:grid;grid-template-columns:140px 1fr;gap:45px;margin-bottom:35px}.tic2-service{display:grid;grid-template-columns:90px 1fr 260px;gap:35px;align-items:center;padding:28px 0;border-top:1px solid var(--ink)}.tic2-thumb{height:150px}.tic2-thumb img{height:100%}.tic2-benefits{display:grid;grid-template-columns:1fr 1fr}.tic-benefit-editorial{padding:30px;border-top:1px solid var(--ink)}.tic2-process .tic-process-line{display:grid;grid-template-columns:100px 1fr;gap:35px;padding:30px 0;border-top:1px solid var(--ink)}
/* 3 direct contractor */
.tic3-hero{background:var(--p);color:#fff}.tic3-hero>.wrap{display:grid;grid-template-columns:1fr .9fr;gap:45px;align-items:center}.tic3-hero-photo{height:520px;border:8px solid #fff}.tic3-trust{display:grid;grid-template-columns:1fr 1fr;margin-top:30px}.tic3-trust .tic-trust-box{border:1px solid #ffffff44}.tic3-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.tic3-service{border:1px solid var(--line);background:#fff}.tic3-photo{height:210px}.tic3-photo img{height:100%}.tic3-copy{padding:24px}.tic3-why{background:#101827;color:#fff}.tic3-why>.wrap{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px}.tic3-benefits{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tic-benefit-check{display:grid;grid-template-columns:30px 1fr;gap:12px;padding:20px;background:#ffffff0b;border:1px solid #ffffff18}
/* 4 architectural */
.tic4-hero{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:minmax(520px,68vh) auto;padding:0!important}.tic4-copy{padding:7vw;display:flex;align-items:center}.tic4-image{overflow:hidden}.tic4-meta{background:var(--s);color:#fff;padding:25px 7vw;display:flex;justify-content:space-between}.tic4-trust{display:grid;grid-template-columns:repeat(4,1fr);background:var(--soft)}.tic4-title{display:grid;grid-template-columns:1fr 1fr;gap:80px}.tic4-service-grid{display:grid;grid-template-columns:1.3fr .85fr .85fr;gap:18px}.tic4-service{border:1px solid var(--line);min-height:330px}.tic4-photo{height:220px}.tic4-photo img{height:100%}.tic4-service>div:last-child{padding:25px}.tic4-benefits{display:grid;grid-template-columns:repeat(3,1fr)}.tic-benefit-grid{padding:28px;border:1px solid var(--line)}
/* 5 dark industrial */
.tic5{background:#0b0d10;color:#f5f5f5}.tic5>section{background:#0b0d10}.tic5-hero>.wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:55px;align-items:center}.tic5-photo{height:590px}.tic5-trust>.wrap{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid #333}.tic5-trust .tic-trust-box{border-right:1px solid #333}.tic5-label{font:700 12px monospace;color:var(--a);letter-spacing:.15em}.tic5-service{display:grid;grid-template-columns:80px 1fr 50px;gap:25px;padding:30px 0;border-top:1px solid #333}.tic5-service h3{font-size:28px}.tic5-why>.wrap{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px}.tic5-benefits{display:grid;grid-template-columns:1fr 1fr}.tic-benefit-dark{padding:28px;border:1px solid #333;background:#12151a}.tic5 .tic-process-dark{padding:28px;border:1px solid #333}.tic5 .tic-area,.tic5 .tic-contact{background:#11151b}.tic5 .lead{background:#181c22;color:#fff}
/* 6 warm local */
.tic6{background:#fffaf2}.tic6-hero>.wrap{position:relative;min-height:650px}.tic6-photo{position:absolute;inset:0 0 0 28%;overflow:hidden;border-radius:30px}.tic6-card{position:absolute;left:0;top:70px;width:50%;padding:48px;background:#fff;border-radius:26px;box-shadow:0 28px 70px #4a352522}.tic6-story>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:90px}.tic6-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.tic6-service{display:grid;grid-template-columns:.8fr 1.2fr;background:#fff;border-radius:24px;overflow:hidden}.tic6-photo{min-height:260px}.tic6-service>div:last-child{padding:28px}.tic6-benefits{display:grid;grid-template-columns:1fr 1fr}.tic6 .tic-benefit-story{border-color:#d8c8b4}
/* 7 swiss */
.tic7-hero{border-bottom:2px solid var(--ink)}.tic7-hero .tic-hero-copy{max-width:1000px}.tic7-meta{display:grid;grid-template-columns:repeat(4,1fr);margin-top:60px}.tic-trust-line{padding:15px 15px 15px 0}.tic-trust-line span,.tic-trust-line small{display:block;font-size:11px}.tic7-photo{padding-top:35px!important}.tic7-photo img{height:560px}.tic7-index{font:900 12px Arial,sans-serif}.tic7-service{display:grid;grid-template-columns:80px .8fr 1.2fr 80px;gap:30px;padding:30px 0;border-top:2px solid var(--ink);align-items:start}.tic7-service h3{font-size:28px}.tic7-intro{max-width:720px}.tic-benefit-line{display:grid;grid-template-columns:.7fr 1.3fr;padding:30px 0;border-top:1px solid var(--ink)}.tic7 .tic-process-line{display:grid;grid-template-columns:100px 1fr;padding:30px 0;border-top:1px solid var(--ink)}
/* 8 bold geometric */
.tic8-hero{background:var(--soft)}.tic8-hero>.wrap{display:grid;grid-template-columns:1fr .9fr;gap:50px;align-items:center}.tic8-photo{height:520px;border:4px solid var(--ink);box-shadow:18px 18px 0 var(--a)}.tic8-trust>.wrap{display:grid;grid-template-columns:repeat(4,1fr);border:3px solid var(--ink)}.tic8-trust .tic-trust-box{border-right:3px solid var(--ink)}.tic8-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.tic8-service{border:3px solid var(--ink);box-shadow:10px 10px 0 var(--a);background:#fff}.tic8-photo{height:220px}.tic8-service h3,.tic8-service p,.tic8-service .tic8-label{margin-inline:22px}.tic8-benefits{display:grid;grid-template-columns:repeat(3,1fr)}.tic-benefit-bold{padding:28px;border:3px solid var(--ink);background:var(--a)}.tic8-process-bold{border:3px solid var(--ink);padding:28px}
/* 9 magazine */
.tic9-hero h1{font-size:clamp(66px,9vw,132px);max-width:1250px}.tic9-kicker{font:800 12px Arial,sans-serif;letter-spacing:.18em}.tic9-sub{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin:30px 0}.tic9-photo{height:680px}.tic9-intro>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:100px}.tic9-services>.wrap,.tic9-why>.wrap,.tic9-process>.wrap{display:grid;grid-template-columns:180px 1fr;gap:50px}.tic9-service-grid{display:grid;grid-template-columns:1.3fr .8fr;gap:22px}.tic9-service{border-top:1px solid var(--ink)}.tic9-feature{grid-row:span 2}.tic9-photo{height:260px}.tic9-feature .tic9-photo{height:520px}.tic9-service>div:last-child{padding:24px 0}.tic9-benefits{display:grid;grid-template-columns:1fr 1fr}.tic-benefit-mag{padding:28px;border-top:1px solid var(--ink)}.tic9 .tic-process-line{display:grid;grid-template-columns:80px 1fr;padding:28px 0;border-top:1px solid var(--ink)}
/* 10 split showcase */
.tic10-hero{display:grid;grid-template-columns:1fr 1fr;min-height:720px;padding:0!important}.tic10-copy{padding:8vw 6vw 45px;background:var(--soft);display:flex;flex-direction:column;justify-content:center}.tic10-photo{overflow:hidden}.tic10-trust{display:grid;grid-template-columns:1fr 1fr;margin-top:35px}.tic10-service-list{border-top:1px solid var(--line)}.tic10-service{display:grid;grid-template-columns:.7fr 1.2fr 60px;gap:35px;padding:30px 0;border-bottom:1px solid var(--line);align-items:center}.tic10-service h3{font-size:28px}.tic10-why{background:var(--s);color:#fff}.tic10-why>.wrap{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px}.tic10-benefits{display:grid;grid-template-columns:1fr 1fr}.tic-benefit-split{display:grid;grid-template-columns:50px 1fr;gap:18px;padding:24px;border-top:1px solid #ffffff33}
/* Phase 4.3.2B hard contrast enforcement.
   Light sections use a fixed readable ink palette. Dark sections explicitly opt into light text.
   Brand colors remain accents only and can no longer make body copy unreadable. */
.tic{--awb-light-ink:#111827;--awb-light-body:#374151;--awb-light-muted:#5f6b7a;--awb-dark-ink:#f8fafc;--awb-dark-body:#e5e7eb}

/* Default all ordinary/light content surfaces to readable dark foregrounds. */
.tic1-services,.tic1-process,.tic1-faq,
.tic2-hero,.tic2-manifesto,.tic2-services,.tic2-why,.tic2-process,.tic2-faq,
.tic3-services,.tic3-process,.tic3-faq,
.tic4-hero,.tic4-services,.tic4-why,.tic4-process,.tic4-faq,
.tic6-hero,.tic6-story,.tic6-services,.tic6-why,.tic6-process,.tic6-faq,
.tic7-hero,.tic7-photo,.tic7-services,.tic7-why,.tic7-process,.tic7-faq,
.tic8-hero,.tic8-trust,.tic8-services,.tic8-why,.tic8-process,.tic8-faq,
.tic9-hero,.tic9-intro,.tic9-services,.tic9-why,.tic9-process,.tic9-faq,
.tic10-hero,.tic10-services,.tic10-process,.tic10-faq,
.tic-area,.tic-contact,.tic-map{color:var(--awb-light-ink)!important}

.tic1-services h1,.tic1-services h2,.tic1-services h3,.tic1-services h4,.tic1-services p,.tic1-services li,.tic1-services summary,
.tic1-process h1,.tic1-process h2,.tic1-process h3,.tic1-process h4,.tic1-process p,.tic1-process li,.tic1-process summary,
.tic1-faq h1,.tic1-faq h2,.tic1-faq h3,.tic1-faq h4,.tic1-faq p,.tic1-faq li,.tic1-faq summary,
.tic2 h1,.tic2 h2,.tic2 h3,.tic2 h4,.tic2 p,.tic2 li,.tic2 summary,
.tic3-services h1,.tic3-services h2,.tic3-services h3,.tic3-services h4,.tic3-services p,.tic3-services li,.tic3-services summary,
.tic3-process h1,.tic3-process h2,.tic3-process h3,.tic3-process h4,.tic3-process p,.tic3-process li,.tic3-process summary,
.tic3-faq h1,.tic3-faq h2,.tic3-faq h3,.tic3-faq h4,.tic3-faq p,.tic3-faq li,.tic3-faq summary,
.tic4 h1,.tic4 h2,.tic4 h3,.tic4 h4,.tic4 p,.tic4 li,.tic4 summary,
.tic6 h1,.tic6 h2,.tic6 h3,.tic6 h4,.tic6 p,.tic6 li,.tic6 summary,
.tic7 h1,.tic7 h2,.tic7 h3,.tic7 h4,.tic7 p,.tic7 li,.tic7 summary,
.tic8 h1,.tic8 h2,.tic8 h3,.tic8 h4,.tic8 p,.tic8 li,.tic8 summary,
.tic9 h1,.tic9 h2,.tic9 h3,.tic9 h4,.tic9 p,.tic9 li,.tic9 summary,
.tic10-services h1,.tic10-services h2,.tic10-services h3,.tic10-services h4,.tic10-services p,.tic10-services li,.tic10-services summary,
.tic10-process h1,.tic10-process h2,.tic10-process h3,.tic10-process h4,.tic10-process p,.tic10-process li,.tic10-process summary,
.tic10-faq h1,.tic10-faq h2,.tic10-faq h3,.tic10-faq h4,.tic10-faq p,.tic10-faq li,.tic10-faq summary,
.tic-area h1,.tic-area h2,.tic-area h3,.tic-area h4,.tic-area p,.tic-area li,.tic-area summary,
.tic-contact h1,.tic-contact h2,.tic-contact h3,.tic-contact h4,.tic-contact p,.tic-contact li,.tic-contact label,.tic-contact small,
.tic-map h1,.tic-map h2,.tic-map h3,.tic-map h4,.tic-map p{color:var(--awb-light-ink)!important}

/* Paragraphs on light surfaces are slightly softer but never pale/white. */
.tic1-services p,.tic1-process p,.tic1-faq p,
.tic2 p,.tic3-services p,.tic3-process p,.tic3-faq p,
.tic4 p,.tic6 p,.tic7 p,.tic8 p,.tic9 p,
.tic10-services p,.tic10-process p,.tic10-faq p,.tic-area p,.tic-contact p,.tic-map p{color:var(--awb-light-body)!important}

/* Deliberately dark surfaces. */
.tic1-hero,.tic1-why,.tic3-hero,.tic3-why,.tic10-why,
.tic5,.tic5>section,.tic5 .tic-area,.tic5 .tic-contact,.tic5 .tic-map,
.tic-cta{color:var(--awb-dark-ink)!important}
.tic1-hero h1,.tic1-hero h2,.tic1-hero h3,.tic1-hero p,
.tic1-why h1,.tic1-why h2,.tic1-why h3,.tic1-why p,
.tic3-hero h1,.tic3-hero h2,.tic3-hero h3,.tic3-hero p,
.tic3-why h1,.tic3-why h2,.tic3-why h3,.tic3-why p,
.tic10-why h1,.tic10-why h2,.tic10-why h3,.tic10-why p,
.tic5 h1,.tic5 h2,.tic5 h3,.tic5 h4,.tic5 p,.tic5 li,.tic5 summary,.tic5 label,.tic5 small,
.tic-cta h1,.tic-cta h2,.tic-cta h3,.tic-cta h4,.tic-cta p,.tic-cta small{color:var(--awb-dark-ink)!important}

/* Accent labels stay branded, except on dark surfaces where readability wins. */
.tic .eyebrow,.tic [class*="label"],.tic [class*="num"]{color:var(--p)!important}
.tic1-hero .eyebrow,.tic1-why .eyebrow,.tic3-hero .eyebrow,.tic3-why .eyebrow,.tic10-why .eyebrow,.tic5 .eyebrow,.tic-cta .eyebrow{color:var(--awb-dark-ink)!important}

/* Cards are always independently readable regardless of parent section theme. */
.tic article:not(.tic-benefit-dark):not(.tic-process-dark),.tic .tic-process-card,.tic .tic3-service,.tic .tic4-service,.tic .tic6-service,.tic .tic8-service{color:var(--awb-light-ink)!important}
.tic article:not(.tic-benefit-dark):not(.tic-process-dark) h3,.tic article:not(.tic-benefit-dark):not(.tic-process-dark) p,
.tic .tic-process-card h3,.tic .tic-process-card p,.tic .tic3-service h3,.tic .tic3-service p,.tic .tic4-service h3,.tic .tic4-service p,.tic .tic6-service h3,.tic .tic6-service p,.tic .tic8-service h3,.tic .tic8-service p{color:var(--awb-light-ink)!important}
.tic .tic-benefit-dark,.tic .tic-process-dark,.tic .tic-benefit-dark h3,.tic .tic-benefit-dark p,.tic .tic-process-dark h3,.tic .tic-process-dark p{color:var(--awb-dark-ink)!important}

/* Form controls and secondary buttons must never inherit white-on-white text. */
.tic-contact input,.tic-contact textarea,.tic-contact select{background:#fff!important;color:#111827!important;border-color:#cbd5e1!important}
.tic-contact input::placeholder,.tic-contact textarea::placeholder{color:#64748b!important;opacity:1!important}
.tic-contact .lead{background:#fff!important;color:#111827!important}
.tic .btn-light,.tic .btn-secondary{background:#fff!important;color:#111827!important;border-color:#cbd5e1!important}
.tic-cta .btn-light,.tic-cta .btn-secondary{background:#fff!important;color:#111827!important}
@media(max-width:900px){.tic h1{font-size:clamp(42px,11vw,62px)}.tic>section{padding:62px 0}.tic-area>.wrap,.tic-contact>.wrap,.tic1-why>.wrap,.tic2-hero>.wrap,.tic2-manifesto>.wrap,.tic3-hero>.wrap,.tic3-why>.wrap,.tic4-title,.tic5-hero>.wrap,.tic5-why>.wrap,.tic6-story>.wrap,.tic8-hero>.wrap,.tic9-sub,.tic9-intro>.wrap,.tic9-services>.wrap,.tic9-why>.wrap,.tic9-process>.wrap,.tic10-why>.wrap{grid-template-columns:1fr}.tic-process-grid,.tic3-service-grid,.tic4-service-grid,.tic8-service-grid{grid-template-columns:1fr}.tic1-service,.tic1-service:nth-child(even){grid-template-columns:1fr}.tic1-service:nth-child(even) .tic1-service-media{order:0}.tic2-service,.tic7-service,.tic10-service{grid-template-columns:60px 1fr}.tic2-thumb,.tic7-service p,.tic10-service p{grid-column:2}.tic4-hero,.tic10-hero{grid-template-columns:1fr}.tic4-trust,.tic1-trust>.wrap,.tic5-trust>.wrap,.tic7-meta,.tic8-trust>.wrap{grid-template-columns:1fr 1fr}.tic6-hero>.wrap{min-height:auto}.tic6-photo,.tic6-card{position:relative;inset:auto;width:100%}.tic6-photo{height:420px}.tic6-card{margin-top:-45px}.tic6-service-grid,.tic6-benefits,.tic2-benefits,.tic3-benefits,.tic5-benefits,.tic8-benefits,.tic9-benefits,.tic10-benefits{grid-template-columns:1fr}.tic9-photo{height:430px}.tic-cta>.wrap{display:block}}/* Phase 4.5C - unique homepage designs 21–30 */
.tx{--tx-ink:#182432;--tx-muted:#536171;--tx-paper:#f7f8f7;color:var(--tx-ink)}.tx>section{padding:clamp(58px,7vw,104px) 0}.tx h1{font-size:clamp(43px,5.8vw,86px);line-height:1.05;letter-spacing:-.045em}.tx h2{font-size:clamp(31px,3.6vw,54px);line-height:1.12}.tx p{color:var(--tx-muted);line-height:1.7}.tx .tx-hero{padding:70px 0}.tx-hero>.wrap{position:relative}.tx-copy{position:relative;z-index:2}.tx-copy p{max-width:600px}.tx-hero-media,.tx-feature-media,.tx-area-photo{min-height:400px;overflow:hidden}.tx-hero-media img,.tx-feature-media img,.tx-area-photo img{width:100%;height:100%;object-fit:cover}.tx-heading{max-width:760px;margin-bottom:35px}.tx-service-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.tx-service{background:#fff;border:1px solid #e1e6e8;overflow:hidden;min-width:0}.tx-service-photo{height:215px}.tx-service-photo img{width:100%;height:100%;object-fit:cover}.tx-service-copy{padding:24px}.tx-service h3{font-size:22px}.tx-service a{color:var(--p);font-weight:750}.tx-why{background:var(--tx-paper)}.tx-why>.wrap,.tx-feature>.wrap,.tx-area>.wrap,.tx-contact>.wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:7%;align-items:start}.tx-benefits{display:grid;grid-template-columns:1fr 1fr;gap:16px}.tx-benefit{display:flex;gap:15px;border-top:1px solid #cbd3d7;padding:20px 0}.tx-benefit>span{font-size:13px;color:var(--p);font-weight:800}.tx-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.tx-step{border-top:3px solid var(--p);padding:25px;background:var(--tx-paper)}.tx-step span{font-weight:800;color:var(--p)}.tx-area{background:#f0f4f6}.tx-cta{background:var(--s);color:#fff}.tx-cta>.wrap{display:flex;align-items:center;justify-content:space-between;gap:45px}.tx-cta h2,.tx-cta p,.tx-cta .eyebrow{color:#fff!important}.tx-faq-list{display:grid;grid-template-columns:1fr 1fr;gap:16px}.tx-question{border-bottom:1px solid #cdd5db;padding:17px 0}.tx-question summary{cursor:pointer;font-weight:750}.tx-contact .lead{background:#fff;color:#182432}.tx-contact input,.tx-contact textarea,.tx-contact select{color:#182432!important;background:#fff!important}.tx-feature-media{height:460px}.tx21 .tx-frame{height:590px;margin-right:11%;border:15px solid #f1f0ec}.tx21 .tx-floating{position:relative;margin:-190px 0 0 auto;width:62%;background:#fff;padding:45px;box-shadow:0 18px 70px #0002}.tx21 .tx-service-list{grid-template-columns:1fr 1fr}.tx22 .tx-masthead{text-align:center;max-width:1000px;margin:auto}.tx22 .tx-masthead h1{font-family:Georgia,serif;font-weight:500}.tx22 .tx-duo{display:grid;grid-template-columns:1.3fr .7fr;gap:50px;margin-top:40px;align-items:end}.tx22 .tx-duo .tx-hero-media{height:520px}.tx22 .tx-service{border:0;border-top:2px solid var(--tx-ink)}.tx23 .tx-panorama{height:580px}.tx23 .tx-overlay{position:relative;margin:-140px 8% 0 auto;width:60%;padding:40px;background:var(--s);color:#fff}.tx23 .tx-overlay p{color:#f2f2f2}.tx23 .tx-service-list{grid-template-columns:repeat(2,1fr)}.tx24 .tx-hero>.wrap{display:grid;grid-template-columns:90px 1fr 1fr;gap:30px;align-items:center}.tx24 .tx-sideword{writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:.3em;font-weight:800}.tx24 .tx-hero-media{height:650px}.tx24 .tx-service-list{grid-template-columns:1fr}.tx24 .tx-service{display:grid;grid-template-columns:280px 1fr}.tx24 .tx-service-photo{height:100%}.tx25 .tx-editorial{display:grid;grid-template-columns:1fr 1.1fr;gap:50px}.tx25 h1,.tx25 h2{font-family:Georgia,serif;font-weight:500}.tx25 .tx-editorial-photos{display:grid;grid-template-columns:1.2fr .8fr;gap:12px;align-items:end}.tx25 .tx-editorial-photos .tx-hero-media{height:520px}.tx25 .tx-editorial-photos>div:last-child{height:340px;overflow:hidden}.tx25 .tx-editorial-photos img{width:100%;height:100%;object-fit:cover}.tx25 .tx-service-list{grid-template-columns:repeat(2,1fr)}.tx26 .tx-hero{background:#edf4f8}.tx26 .tx-action{display:grid;grid-template-columns:1fr .85fr;gap:45px;align-items:center}.tx26 .tx-action-form{background:#fff;padding:28px;box-shadow:0 15px 40px #0002}.tx26 .tx-hero-media{height:260px;margin-top:28px}.tx26 .tx-service-list{grid-template-columns:repeat(3,1fr)}.tx27 .tx-neighborhood{position:relative}.tx27 .tx-neighborhood>.tx-hero-media{height:640px;border-radius:38px}.tx27 .tx-neighborhood-card{position:relative;width:65%;background:#fff;padding:45px;margin:-200px 0 0 5%;border-radius:25px;box-shadow:0 25px 65px #0002}.tx27 .tx-service{border-radius:20px}.tx27 .tx-why{background:#f5f7ed}.tx28 .tx-grid-hero{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:22px}.tx28 .tx-grid-hero>.tx-copy{padding:40px;background:#eef1f2}.tx28 .tx-grid-hero>.tx-hero-media{height:540px}.tx28 .tx-grid-label{grid-column:1/-1;padding:18px;border-top:3px solid var(--tx-ink);font-weight:800;letter-spacing:.14em}.tx28 .tx-service-list{grid-template-columns:repeat(2,1fr)}.tx28 .tx-service{display:grid;grid-template-columns:40% 60%}.tx28 .tx-service-photo{height:100%}.tx29{background:#131c26;color:#f7f9fc}.tx29 .tx-hero,.tx29 .tx-process,.tx29 .tx-services{background:#131c26}.tx29 .tx-hero h1,.tx29 .tx-hero p,.tx29 .tx-process h2,.tx29 .tx-services h2{color:#f7f9fc}.tx29 .tx-impact{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center}.tx29 .tx-impact-media{height:620px;clip-path:polygon(14% 0,100% 0,100% 85%,86% 100%,0 100%,0 15%)}.tx29 .tx-impact-media img{width:100%;height:100%;object-fit:cover}.tx29 .tx-service{background:#243140;border-color:#536171}.tx29 .tx-service h3,.tx29 .tx-service p,.tx29 .tx-step h3{color:#f7f9fc}.tx29 .tx-step{background:#243140}.tx29 .tx-why,.tx29 .tx-faq,.tx29 .tx-contact{background:#fff;color:#182432}.tx30 .tx-calm{text-align:center;max-width:830px;margin:auto}.tx30 .tx-calm p{margin-inline:auto}.tx30 .tx-calm .actions{justify-content:center}.tx30 .tx-calm-photo{height:480px;margin-top:45px}.tx30 .tx-calm-photo img{width:100%;height:100%;object-fit:cover}.tx30 .tx-service-list{grid-template-columns:1fr 1fr}.tx30 .tx-service{display:grid;grid-template-columns:45% 55%;border:0;border-bottom:1px solid #cbd3d7}.tx30 .tx-service-photo{height:100%}.tx30 .tx-why{background:#fff}.tx30 .tx-benefits{grid-template-columns:1fr}
@media(max-width:900px){.tx-why>.wrap,.tx-feature>.wrap,.tx-area>.wrap,.tx-contact>.wrap,.tx22 .tx-duo,.tx24 .tx-hero>.wrap,.tx25 .tx-editorial,.tx26 .tx-action,.tx28 .tx-grid-hero,.tx29 .tx-impact{grid-template-columns:1fr}.tx-service-list,.tx21 .tx-service-list,.tx23 .tx-service-list,.tx25 .tx-service-list,.tx26 .tx-service-list,.tx28 .tx-service-list,.tx30 .tx-service-list{grid-template-columns:1fr 1fr}.tx21 .tx-floating,.tx23 .tx-overlay,.tx27 .tx-neighborhood-card{width:90%;margin:-80px auto 0;padding:25px}.tx24 .tx-sideword{writing-mode:horizontal-tb;transform:none}.tx-cta>.wrap{display:block}.tx-hero-media,.tx24 .tx-hero-media,.tx29 .tx-impact-media{height:380px;min-height:0}.tx-benefits,.tx-faq-list{grid-template-columns:1fr}}
@media(max-width:620px){.tx-service-list,.tx21 .tx-service-list,.tx23 .tx-service-list,.tx25 .tx-service-list,.tx26 .tx-service-list,.tx28 .tx-service-list,.tx30 .tx-service-list,.tx-steps{grid-template-columns:1fr}.tx24 .tx-service,.tx28 .tx-service,.tx30 .tx-service{display:block}.tx-service-photo,.tx24 .tx-service-photo,.tx28 .tx-service-photo,.tx30 .tx-service-photo{height:220px}.tx21 .tx-frame{margin:0;height:380px}.tx21 .tx-floating{width:100%;margin:0;box-shadow:none}.tx25 .tx-editorial-photos{grid-template-columns:1fr}.tx25 .tx-editorial-photos>div:last-child{display:none}.tx27 .tx-neighborhood>.tx-hero-media{height:360px}.tx27 .tx-neighborhood-card{width:100%;margin:0}.tx29 .tx-impact-media{clip-path:none}.tx30 .tx-calm-photo{height:300px}}

/* Phase 4.7H-02: screenshot audit corrections, scoped exclusively to 21–30. */
.tx{--tx-ink:#182432;--tx-muted:#435365}
.tx>section{padding-block:clamp(42px,5vw,76px)}
.tx .tx-hero{padding-block:clamp(35px,4vw,65px)}
.tx h1{font-size:clamp(34px,4.2vw,64px);line-height:1.09;overflow-wrap:break-word}
.tx h2{font-size:clamp(27px,2.8vw,43px)}
.tx h3{line-height:1.25}
.tx .tx-hero-media,.tx .tx-feature-media,.tx .tx-area-photo{min-height:0}
.tx .tx-hero-media img,.tx .tx-feature-media img,.tx .tx-area-photo img,.tx .tx-service-photo img,.tx .tx-calm-photo img,.tx .tx-impact-media img{display:block;object-position:center center}
.tx .tx-service-copy{padding:clamp(16px,2vw,25px)}
.tx .tx-service h3{font-size:clamp(17px,1.7vw,22px);color:#182432}
.tx .tx-service p,.tx .tx-benefit p,.tx .tx-step p{font-size:clamp(14px,1.15vw,17px);line-height:1.55}
.tx .tx-service-photo{height:clamp(170px,18vw,240px);overflow:hidden}
.tx .tx-service-photo img{width:100%;height:100%;object-fit:cover}
.tx .tx-service-list{gap:clamp(15px,2vw,25px)}
.tx .tx-benefit>span,.tx .tx-step>span,.tx .tx-service-copy>small{display:none}
.tx .tx-benefit{gap:0}
.tx .tx-step{padding:clamp(17px,2vw,26px)}
.tx .tx-area>.wrap{align-items:center}
.tx .tx-area h2,.tx .tx-area p,.tx .tx-area .eyebrow{color:#182432}
.tx .tx-area-photo{height:clamp(230px,26vw,360px)}
.tx .tx-area-photo img{height:100%}
.tx .tx-cta{background:#102e3d;color:#fff}
.tx .tx-cta h2,.tx .tx-cta p,.tx .tx-cta .eyebrow{color:#fff!important}
.tx .tx-cta .actions{flex-shrink:0}
.tx21 .tx-frame{height:clamp(300px,36vw,470px)}
.tx21 .tx-floating{margin-top:-105px;max-width:660px;padding:clamp(25px,3vw,42px)}
.tx22 .tx-duo .tx-hero-media{height:clamp(280px,34vw,440px)}
.tx23 .tx-panorama{height:clamp(300px,38vw,480px)}
.tx23 .tx-overlay{margin-top:-100px;background:#102e3d}
.tx23 .tx-overlay h1,.tx23 .tx-overlay .eyebrow{color:#fff}
.tx24 .tx-hero>.wrap{grid-template-columns:45px minmax(0,1fr) minmax(0,1fr)}
.tx24 .tx-hero-media{height:clamp(300px,35vw,470px)}
.tx24 .tx-service{grid-template-columns:minmax(180px,30%) minmax(0,1fr)}
.tx25 .tx-editorial-photos .tx-hero-media{height:clamp(280px,34vw,430px)}
.tx25 .tx-editorial-photos>div:last-child{height:clamp(180px,22vw,280px)}
.tx26 .tx-hero-media{height:clamp(200px,24vw,330px)}
.tx27 .tx-neighborhood>.tx-hero-media{height:clamp(310px,38vw,480px)}
.tx27 .tx-neighborhood-card{margin-top:-110px}
.tx28 .tx-grid-hero>.tx-hero-media{height:clamp(300px,36vw,470px)}
.tx29 .tx-impact-media{height:clamp(300px,38vw,480px)}
.tx29 .tx-service h3,.tx29 .tx-service p,.tx29 .tx-step h3,.tx29 .tx-step p{color:#f7f9fc}
.tx29 .tx-service a{color:#62e3d2}
.tx29 .tx-steps .tx-step{background:#243140}
.tx29 .tx-why h2,.tx29 .tx-why h3,.tx29 .tx-faq h2,.tx29 .tx-contact h2,.tx29 .tx-area h2{color:#182432}
.tx29 .tx-why p,.tx29 .tx-faq p,.tx29 .tx-contact p,.tx29 .tx-area p{color:#435365}
.tx29 .tx-cta{background:#102e3d}
.tx30 .tx-calm-photo{height:clamp(280px,32vw,430px)}
@media(max-width:900px){
.tx24 .tx-hero>.wrap{grid-template-columns:1fr}
.tx .tx-service-list,.tx21 .tx-service-list,.tx23 .tx-service-list,.tx25 .tx-service-list,.tx26 .tx-service-list,.tx28 .tx-service-list,.tx30 .tx-service-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.tx .tx-hero-media{min-height:0}
.tx21 .tx-floating,.tx23 .tx-overlay,.tx27 .tx-neighborhood-card{margin-top:-55px;width:90%}
}
@media(max-width:620px){
.tx>section{padding-block:38px}.tx .tx-hero{padding-block:30px}
.tx h1{font-size:clamp(32px,9vw,46px)}.tx h2{font-size:clamp(26px,7vw,36px)}
.tx .tx-service-list,.tx21 .tx-service-list,.tx23 .tx-service-list,.tx25 .tx-service-list,.tx26 .tx-service-list,.tx28 .tx-service-list,.tx30 .tx-service-list,.tx .tx-steps{grid-template-columns:1fr}
.tx24 .tx-service,.tx28 .tx-service,.tx30 .tx-service{display:block}
.tx24 .tx-service-photo,.tx28 .tx-service-photo,.tx30 .tx-service-photo{height:205px}
.tx21 .tx-frame{height:280px;margin:0;border-width:7px}
.tx21 .tx-floating,.tx23 .tx-overlay,.tx27 .tx-neighborhood-card{margin:0;width:100%;padding:23px;box-shadow:none}
.tx23 .tx-panorama,.tx27 .tx-neighborhood>.tx-hero-media{height:290px}
.tx25 .tx-editorial-photos .tx-hero-media{height:290px}
.tx26 .tx-action-form{padding:18px}
.tx28 .tx-grid-hero>.tx-copy{padding:24px}
.tx29 .tx-impact-media{height:280px;clip-path:none}
.tx30 .tx-calm-photo{height:260px}
.tx .tx-area-photo{height:230px}
}

/* Phase 4.7H-03 — width + responsive media audit. All selectors confined to .tx (21–30). */
.tx{width:100%;max-width:100%;min-width:0;overflow-x:clip;box-sizing:border-box}
.tx,.tx *,.tx *::before,.tx *::after{box-sizing:border-box}
.tx > section{width:100%;max-width:100%;min-width:0}
.tx .wrap,.tx > section > .wrap,.tx .tic-map > .wrap{
  width:min(1240px,calc(100% - 64px));max-width:1240px;
  margin-inline:auto;min-width:0;
}
.tx .wrap > *, .tx .tx-copy,.tx .tx-feature-media,.tx .tx-area-photo,
.tx .tx-service,.tx .tx-service-copy,.tx .tx-hero-media,.tx .tx-editorial-photos,
.tx .tx-panorama,.tx .tx-frame,.tx .tx-floating,.tx .tx-overlay,
.tx .tx-neighborhood,.tx .tx-neighborhood-card,.tx .tx-impact-media,
.tx .tx-calm-photo,.tx .tx-action-form,.tx .tx-benefits,.tx .tx-steps,
.tx .tx-faq-list{min-width:0;max-width:100%}
.tx .tx-hero img,.tx .tx-service-photo img,.tx .tx-feature-media img,
.tx .tx-area-photo img,.tx .tx-editorial-photos img,.tx .tx-impact-media img,
.tx .tx-calm-photo img,.tx .tx-neighborhood img{
  display:block;width:100%;max-width:100%;height:100%;object-fit:cover;
}
.tx .tx-hero-media,.tx .tx-feature-media,.tx .tx-area-photo,
.tx .tx-service-photo,.tx .tx-frame,.tx .tx-panorama,
.tx .tx-impact-media,.tx .tx-calm-photo{overflow:hidden}
.tx .tx-service-list,.tx .tx-benefits,.tx .tx-steps,.tx .tx-faq-list{
  width:100%;min-width:0;
}
.tx .tx-why > .wrap,.tx .tx-feature > .wrap,.tx .tx-area > .wrap,
.tx .tx-contact > .wrap{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,4vw,64px)}
.tx .tx-service-list{grid-template-columns:repeat(3,minmax(0,1fr))}
.tx21 .tx-service-list,.tx23 .tx-service-list,.tx25 .tx-service-list,
.tx28 .tx-service-list,.tx30 .tx-service-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.tx24 .tx-service-list{grid-template-columns:minmax(0,1fr)}
.tx24 .tx-service{grid-template-columns:minmax(160px,30%) minmax(0,1fr)}
.tx28 .tx-service{grid-template-columns:minmax(0,40%) minmax(0,60%)}
.tx30 .tx-service{grid-template-columns:minmax(0,45%) minmax(0,55%)}
.tx24 .tx-service-photo,.tx28 .tx-service-photo,.tx30 .tx-service-photo{height:auto;min-height:175px}
.tx .tx-service-copy h3,.tx .tx-service-copy p,.tx .tx-copy h1,.tx .tx-copy p{
  overflow-wrap:anywhere
}
.tx .tx-service-photo{aspect-ratio:16/10;height:auto}
.tx24 .tx-service-photo,.tx28 .tx-service-photo,.tx30 .tx-service-photo{aspect-ratio:auto}
.tx .tx-area-photo{aspect-ratio:16/10;height:auto;max-height:360px}
.tx .tx-feature-media{aspect-ratio:16/10;height:auto;min-height:0}
.tx .tx-hero-media{min-height:0}
.tx .tx-cta > .wrap{min-width:0}
.tx .tic-map iframe,.tx .tic-map embed,.tx .tic-map img,.tx .tic-map > .wrap > *{
  max-width:100%
}
@media(max-width:1024px){
 .tx .wrap,.tx > section > .wrap,.tx .tic-map > .wrap{width:calc(100% - 48px)}
 .tx .tx-why > .wrap,.tx .tx-feature > .wrap,.tx .tx-area > .wrap,
 .tx .tx-contact > .wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .tx .tx-service-list,.tx21 .tx-service-list,.tx23 .tx-service-list,
 .tx25 .tx-service-list,.tx26 .tx-service-list,.tx28 .tx-service-list,
 .tx30 .tx-service-list{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tx24 .tx-service-list{grid-template-columns:1fr}
 .tx25 .tx-editorial-photos{grid-template-columns:minmax(0,1fr) minmax(0,.65fr)}
}
@media(max-width:767px){
 .tx .wrap,.tx > section > .wrap,.tx .tic-map > .wrap{width:calc(100% - 36px)}
 .tx .tx-why > .wrap,.tx .tx-feature > .wrap,.tx .tx-area > .wrap,
 .tx .tx-contact > .wrap,.tx22 .tx-duo,.tx24 .tx-hero > .wrap,
 .tx25 .tx-editorial,.tx26 .tx-action,.tx28 .tx-grid-hero,
 .tx29 .tx-impact{grid-template-columns:minmax(0,1fr)}
 .tx .tx-service-list,.tx21 .tx-service-list,.tx23 .tx-service-list,
 .tx25 .tx-service-list,.tx26 .tx-service-list,.tx28 .tx-service-list,
 .tx30 .tx-service-list,.tx .tx-steps,.tx .tx-benefits,.tx .tx-faq-list{
   grid-template-columns:minmax(0,1fr)
 }
 .tx24 .tx-service,.tx28 .tx-service,.tx30 .tx-service{display:block}
 .tx .tx-service-photo,.tx24 .tx-service-photo,.tx28 .tx-service-photo,
 .tx30 .tx-service-photo{aspect-ratio:16/9;height:auto;min-height:0}
 .tx .tx-service-photo img{position:static}
 .tx .tx-area-photo,.tx .tx-feature-media{aspect-ratio:16/10;height:auto;max-height:none}
 .tx21 .tx-floating,.tx23 .tx-overlay,.tx27 .tx-neighborhood-card{
   width:100%;max-width:100%;margin:0;padding:24px;position:relative
 }
 .tx21 .tx-frame,.tx23 .tx-panorama,.tx27 .tx-neighborhood > .tx-hero-media{
   height:auto;aspect-ratio:16/10
 }
 .tx22 .tx-duo .tx-hero-media,.tx24 .tx-hero-media,
 .tx25 .tx-editorial-photos .tx-hero-media,.tx26 .tx-hero-media,
 .tx28 .tx-grid-hero > .tx-hero-media,.tx29 .tx-impact-media,
 .tx30 .tx-calm-photo{height:auto;aspect-ratio:16/10}
 .tx25 .tx-editorial-photos{grid-template-columns:minmax(0,1fr)}
 .tx25 .tx-editorial-photos > div:last-child{display:none}
 .tx .tx-cta > .wrap{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
 .tx .actions{display:flex;flex-wrap:wrap;max-width:100%}
}
@media(max-width:420px){
 .tx .wrap,.tx > section > .wrap,.tx .tic-map > .wrap{width:calc(100% - 28px)}
 .tx .tx-service-copy{padding:18px}
 .tx .tx-copy h1{font-size:clamp(30px,9vw,39px)}
 .tx .tx-grid-label{overflow-wrap:anywhere}
}


/* Phase 4.7H-04: screenshot-driven geometry corrections; scoped to Templates 21–30. */
.tic.tx{width:100%;max-width:none;overflow-x:clip}
.tic.tx>section{width:100%;max-width:none}
.tic.tx>section>.wrap{
 width:calc(100% - clamp(32px,6vw,112px))!important;
 max-width:1440px!important;margin-left:auto!important;margin-right:auto!important;
 min-width:0!important;
}
.tic.tx .wrap,.tic.tx .wrap *{box-sizing:border-box}
.tic.tx .tx-hero>.wrap,.tic.tx .tx-services>.wrap,.tic.tx .tx-area>.wrap,
.tic.tx .tx-process>.wrap,.tic.tx .tx-why>.wrap,.tic.tx .tx-faq>.wrap,
.tic.tx .tx-contact>.wrap,.tic.tx .tic-map>.wrap{min-width:0}
.tic.tx .tx-service-list{width:100%;min-width:0;align-items:stretch}
.tic.tx .tx-service{min-width:0;max-width:100%;width:100%;display:flex;flex-direction:column}
.tic.tx .tx-service-copy{flex:1;min-width:0;overflow-wrap:break-word}
.tic.tx .tx-service-photo{position:relative;width:100%;height:auto!important;aspect-ratio:16/9;min-height:0;overflow:hidden;background:#0c6465}
.tic.tx .tx-service-photo img{position:absolute;inset:0;width:100%;height:100%;max-width:100%;object-fit:contain!important;object-position:center}
.tic.tx .tx-hero-media,.tic.tx .tx-area-photo,.tic.tx .tx-feature-media,
.tic.tx .tx-impact-media,.tic.tx .tx-calm-photo{position:relative;overflow:hidden}
.tic.tx .tx-hero-media img,.tic.tx .tx-area-photo img,
.tic.tx .tx-feature-media img,.tic.tx .tx-impact-media img,
.tic.tx .tx-calm-photo img{width:100%;height:100%;object-fit:contain!important;object-position:center;background:#0c6465}
.tic.tx .tx-area-photo{height:auto!important;aspect-ratio:16/9;min-height:0}
.tic.tx .tx-feature-media{height:auto!important;aspect-ratio:16/10;min-height:0}
.tic.tx .tx-service-list{grid-template-columns:repeat(3,minmax(0,1fr))}
.tic.tx21 .tx-service-list,.tic.tx23 .tx-service-list,.tic.tx25 .tx-service-list,
.tic.tx28 .tx-service-list,.tic.tx30 .tx-service-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.tic.tx24 .tx-service-list{grid-template-columns:1fr}
.tic.tx24 .tx-service,.tic.tx28 .tx-service,.tic.tx30 .tx-service{display:grid;grid-template-columns:minmax(0,38%) minmax(0,62%)}
.tic.tx24 .tx-service-photo,.tic.tx28 .tx-service-photo,.tic.tx30 .tx-service-photo{
 height:100%!important;aspect-ratio:auto;min-height:180px
}
.tic.tx .tx-why>.wrap,.tic.tx .tx-feature>.wrap,.tic.tx .tx-area>.wrap,
.tic.tx .tx-contact>.wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,70px)}
.tic.tx .tx-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}
.tic.tx .tx-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
.tic.tx .tx-faq-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.tic.tx29 .tx-service h3,.tic.tx29 .tx-service p,.tic.tx29 .tx-step h3,
.tic.tx29 .tx-step p{color:#fff!important}
.tic.tx29 .tx-step{background:#293849!important}
.tic.tx29 .tx-service a{color:#74f3dd!important}
.tic.tx .tx-hero-media img{object-fit:contain!important}
.tic.tx21 .tx-frame,.tic.tx23 .tx-panorama,.tic.tx27 .tx-neighborhood>.tx-hero-media{
 overflow:hidden
}
@media(max-width:1000px){
 .tic.tx .tx-service-list,.tic.tx21 .tx-service-list,.tic.tx23 .tx-service-list,
 .tic.tx25 .tx-service-list,.tic.tx26 .tx-service-list,.tic.tx28 .tx-service-list,
 .tic.tx30 .tx-service-list{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tic.tx24 .tx-service-list{grid-template-columns:1fr}
}
@media(max-width:700px){
 .tic.tx>section>.wrap{width:calc(100% - 32px)!important}
 .tic.tx .tx-service-list,.tic.tx21 .tx-service-list,.tic.tx23 .tx-service-list,
 .tic.tx24 .tx-service-list,.tic.tx25 .tx-service-list,.tic.tx26 .tx-service-list,
 .tic.tx28 .tx-service-list,.tic.tx30 .tx-service-list,
 .tic.tx .tx-benefits,.tic.tx .tx-steps,.tic.tx .tx-faq-list{grid-template-columns:minmax(0,1fr)}
 .tic.tx24 .tx-service,.tic.tx28 .tx-service,.tic.tx30 .tx-service{display:flex;flex-direction:column}
 .tic.tx24 .tx-service-photo,.tic.tx28 .tx-service-photo,.tic.tx30 .tx-service-photo{
  height:auto!important;min-height:0;aspect-ratio:16/9
 }
 .tic.tx .tx-why>.wrap,.tic.tx .tx-feature>.wrap,.tic.tx .tx-area>.wrap,
 .tic.tx .tx-contact>.wrap,.tic.tx22 .tx-duo,.tic.tx24 .tx-hero>.wrap,
 .tic.tx25 .tx-editorial,.tic.tx26 .tx-action,.tic.tx28 .tx-grid-hero,
 .tic.tx29 .tx-impact{grid-template-columns:minmax(0,1fr)}
 .tic.tx .tx-hero-media,.tic.tx .tx-impact-media,.tic.tx .tx-calm-photo{
  height:auto!important;min-height:0!important;aspect-ratio:16/10
 }
 .tic.tx21 .tx-floating,.tic.tx23 .tx-overlay,.tic.tx27 .tx-neighborhood-card{
  width:100%;margin:0;position:relative;max-width:100%
 }
 .tic.tx .tx-cta>.wrap{display:flex;flex-direction:column;align-items:stretch;gap:18px}
 .tic.tx .tx-copy h1{font-size:clamp(30px,8vw,48px)}
}


/* Phase 4.7H-05: dark-mode legibility and section rhythm, scoped to 21–30. */
.tic.tx29 .tx-step,.tic.tx29 .tx-steps .tx-step,
.tic.tx29 .tx-service-copy,.tic.tx29 .tx-service .tx-service-copy{
 background:#253748!important;color:#f6fbff!important;
}
.tic.tx29 .tx-step h3,.tic.tx29 .tx-step p,
.tic.tx29 .tx-service-copy h3,.tic.tx29 .tx-service-copy p,
.tic.tx29 .tx-service-copy small,.tic.tx29 .tx-step span{
 color:#f6fbff!important;opacity:1!important;
 -webkit-text-fill-color:#f6fbff!important;
}
.tic.tx29 .tx-service-copy a,.tic.tx29 .tx-service a{
 color:#7ff5e1!important;-webkit-text-fill-color:#7ff5e1!important;
 text-decoration:underline;text-underline-offset:3px;
}
.tic.tx29 .tx-step p,.tic.tx29 .tx-service-copy p{line-height:1.6}
.tic.tx29 .tx-step{border-color:#425568!important}
.tic.tx>section{padding-top:clamp(34px,4vw,62px)!important;
 padding-bottom:clamp(34px,4vw,62px)!important}
.tic.tx>section.tx-hero{padding-top:clamp(30px,3.8vw,56px)!important;
 padding-bottom:clamp(30px,3.8vw,56px)!important}
.tic.tx .tx-heading{margin-bottom:clamp(16px,2vw,28px)}
.tic.tx .tx-heading h2,.tic.tx .tx-why-lead h2{margin-bottom:clamp(12px,1.5vw,20px)}
.tic.tx .tx-service-list{gap:clamp(14px,1.7vw,24px)}
.tic.tx .tx-steps{gap:clamp(12px,1.4vw,22px)}
.tic.tx .tx-benefits{gap:clamp(12px,1.5vw,24px)}
.tic.tx .tx-service{align-self:stretch}
.tic.tx .tx-service-copy{padding:clamp(18px,1.7vw,26px)}
.tic.tx .tx-service-copy p{margin-block:10px 12px}
.tic.tx .tx-area>.wrap,.tic.tx .tx-feature>.wrap,.tic.tx .tx-why>.wrap{
 align-items:center
}
.tic.tx .tx-area-photo,.tic.tx .tx-feature-media{max-height:390px}
.tic.tx .tx-cta>.wrap{align-items:center}
.tic.tx .tx-cta h2{margin-bottom:12px}
.tic.tx .tx-faq-list{gap:0 clamp(12px,1.5vw,24px)}
.tic.tx .tx-contact>.wrap{align-items:start}
@media(min-width:1001px){
 .tic.tx29 .tx-service-list{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:700px){
 .tic.tx>section{padding-block:32px!important}
 .tic.tx>section.tx-hero{padding-block:26px!important}
 .tic.tx .tx-heading{margin-bottom:18px}
 .tic.tx .tx-service-list,.tic.tx .tx-steps{gap:14px}
 .tic.tx .tx-cta>.wrap{align-items:stretch}
}


/* Phase 4.7H-06 — final scoped geometry, legibility and image refinement. */
.tic.tx{--tx-space:clamp(28px,3.5vw,54px)}
.tic.tx .tx-hero>.wrap,.tic.tx .tx-feature>.wrap,.tic.tx .tx-why>.wrap{min-width:0}
.tic.tx .tx-copy,.tic.tx .tx-editorial-photos,.tic.tx .tx-editorial-photos>*{min-width:0}
.tic.tx .tx-hero h1{max-width:18ch}
.tic.tx .tx-hero p{max-width:60ch}
.tic.tx .tx-hero-media,.tic.tx .tx-service-photo,.tic.tx .tx-feature-media,.tic.tx .tx-area-photo{isolation:isolate}
.tic.tx .tx-hero-media img,.tic.tx .tx-service-photo img,.tic.tx .tx-feature-media img,.tic.tx .tx-area-photo img,.tic.tx .tx-calm-photo img,.tic.tx .tx-impact-media img{max-width:100%;max-height:100%;display:block}
.tic.tx .tx-service-photo{background:#0c6465}
.tic.tx .tx-service-copy{display:flex;flex-direction:column;align-items:flex-start}
.tic.tx .tx-service-copy a{margin-top:auto}
.tic.tx .tx-benefit h3,.tic.tx .tx-step h3{margin-top:0}
.tic.tx .tx-feature>.wrap,.tic.tx .tx-area>.wrap{align-items:center}
.tic.tx .tx-hero-media img,.tic.tx .tx-feature-media img,.tic.tx .tx-area-photo img{object-fit:cover!important}
/* Keep graphic assets fully visible in service cards; photographic assets can fill the frame. */
.tic.tx .tx-service-photo img{object-fit:contain!important}
/* Template 25: reduce dead space while retaining its two-photo editorial signature. */
.tic.tx25 .tx-editorial{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(18px,3vw,42px);align-items:center}
.tic.tx25 .tx-editorial-photos{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);align-items:center;gap:12px}
.tic.tx25 .tx-editorial-photos .tx-hero-media{height:auto!important;aspect-ratio:4/3;min-height:0}
.tic.tx25 .tx-editorial-photos>div:last-child{height:auto!important;aspect-ratio:4/3;overflow:hidden}
.tic.tx25 .tx-editorial-photos>div:last-child img{object-fit:cover!important}
.tic.tx25 .tx-feature-media{aspect-ratio:16/10}
/* Template 29: dark content must remain legible even with theme-specific typography. */
.tic.tx29 .tx-hero .tx-copy,.tic.tx29 .tx-process,.tic.tx29 .tx-services{color:#f6fbff}
.tic.tx29 .tx-hero .tx-copy p,.tic.tx29 .tx-process .tx-heading p,.tic.tx29 .tx-services .tx-heading p{color:#dbe6ee!important}
.tic.tx29 .tx-benefit h3,.tic.tx29 .tx-why h3{color:#182432}
.tic.tx29 .tx-step h3,.tic.tx29 .tx-step p,.tic.tx29 .tx-service-copy h3,.tic.tx29 .tx-service-copy p{color:#f6fbff!important;-webkit-text-fill-color:#f6fbff!important}
/* Tablet: prevent tightly squeezed nested columns and overlong images. */
@media (min-width:701px) and (max-width:1050px){
 .tic.tx25 .tx-editorial{gap:22px}
 .tic.tx25 .tx-editorial-photos{grid-template-columns:minmax(0,1fr)}
 .tic.tx25 .tx-editorial-photos>div:last-child{display:none}
 .tic.tx .tx-service-list{gap:16px}
}
@media(max-width:700px){
 .tic.tx .tx-hero h1{max-width:none}
 .tic.tx25 .tx-editorial{grid-template-columns:minmax(0,1fr);gap:22px}
 .tic.tx25 .tx-editorial-photos{grid-template-columns:minmax(0,1fr)}
 .tic.tx25 .tx-editorial-photos>div:last-child{display:none}
 .tic.tx25 .tx-editorial-photos .tx-hero-media{aspect-ratio:16/10}
 .tic.tx .tx-service-photo{aspect-ratio:16/9}
 .tic.tx .tx-service-copy{min-height:0}
 .tic.tx .tx-hero-media img,.tic.tx .tx-feature-media img,.tic.tx .tx-area-photo img{object-fit:cover!important}
 .tic.tx .tx-contact>.wrap,.tic.tx .tx-area>.wrap,.tic.tx .tx-feature>.wrap{gap:22px}
}


/* Phase 4.11B-03: Relay (#26) only. Other templates retain their existing CSS. */
.tic.tx26 .tx-hero>.wrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:clamp(20px,3vw,48px);align-items:stretch}
.tic.tx26 .tx-action{display:flex;flex-direction:column;justify-content:center;gap:24px;min-width:0}
.tic.tx26 .tx-action-form{max-width:100%;padding:clamp(18px,2vw,28px)}
.tic.tx26 .tx-hero-media{height:auto!important;min-height:380px!important;aspect-ratio:auto;margin:0;align-self:stretch}
.tic.tx26 .tx-hero-media img{width:100%;height:100%;object-fit:cover!important}
.tic.tx26 .tx-service-photo img{object-fit:cover!important}
.tic.tx26 .tx-service{border-radius:12px;box-shadow:0 8px 24px rgba(15,23,42,.06)}
.tic.tx26 .tx-service-copy{gap:8px}
.tic.tx26 .tx-service-copy p{margin:0 0 12px}
.tic.tx26 .tx-steps{align-items:stretch}
.tic.tx26 .tx-step{border-radius:10px;min-width:0}
.tic.tx26 .tx26-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.tic.tx26 .tx26-gallery-item{margin:0;aspect-ratio:4/3;overflow:hidden;border-radius:12px;background:#e8eeee}
.tic.tx26 .tx26-gallery-item img{display:block;width:100%;height:100%;object-fit:cover!important}
@media(max-width:1000px){.tic.tx26 .tx-hero>.wrap{grid-template-columns:minmax(0,1fr)}.tic.tx26 .tx-hero-media{min-height:0!important;aspect-ratio:16/9}.tic.tx26 .tx26-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.tic.tx26 .tx26-gallery-grid{gap:10px}.tic.tx26 .tx-hero-media{aspect-ratio:16/10}}
.ty{--ty-ink:#1c2832;--ty-paper:#f4f6f4;color:var(--ty-ink)}.ty>section{padding:clamp(58px,7vw,104px) 0}.ty .ty-hero{padding:70px 0}.ty h1{font-size:clamp(42px,5.6vw,82px);line-height:1.04;letter-spacing:-.045em}.ty h2{font-size:clamp(30px,3.7vw,52px);line-height:1.13}.ty p{line-height:1.7}.ty .ty-photo{width:100%;height:100%;object-fit:cover}.ty-copy{position:relative;z-index:1}.ty-copy p{max-width:570px}.ty-title{max-width:780px;margin-bottom:35px}.ty-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.ty-card{background:#fff;border:1px solid #dce2e4;min-width:0;overflow:hidden}.ty-card-photo{height:220px}.ty-card-body{padding:25px}.ty-card-body h3{font-size:23px}.ty-card-body a{font-weight:750;color:var(--p)}.ty-why{background:var(--ty-paper)}.ty-why>.wrap,.ty-area>.wrap,.ty-feature>.wrap,.ty-contact>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.ty-benefits{display:grid;grid-template-columns:1fr 1fr;gap:20px}.ty-benefit{display:flex;gap:15px;border-top:1px solid #bdc9cb;padding:22px 0}.ty-benefit small,.ty-step span{color:var(--p);font-weight:800}.ty-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.ty-step{padding:28px;border-top:3px solid var(--p);background:var(--ty-paper)}.ty-area{background:#eaf0f1}.ty-area-photo,.ty-feature-photo{height:440px;overflow:hidden}.ty-questions{display:grid;grid-template-columns:1fr 1fr;gap:15px 35px}.ty-question{border-bottom:1px solid #cbd5d9;padding:18px 0}.ty-question summary{font-weight:750;cursor:pointer}.ty-cta{background:var(--s);color:#fff}.ty-cta>.wrap{display:flex;justify-content:space-between;align-items:center;gap:45px}.ty-cta h2,.ty-cta p,.ty-cta .eyebrow{color:#fff!important}.ty-contact .lead{background:#fff;color:#1c2832}.ty-contact input,.ty-contact textarea,.ty-contact select{background:#fff!important;color:#1c2832!important}.ty-atlas{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:4%}.ty-atlas-copy{padding:50px 0}.ty-atlas-media{height:600px;border-left:15px solid var(--p)}.ty31 .ty-cards{grid-template-columns:repeat(2,1fr)}.ty-beacon{display:grid;grid-template-columns:1fr 1fr;gap:50px}.ty-beacon-media{height:680px;clip-path:polygon(0 0,100% 0,100% 100%,10% 100%)}.ty-beacon-form{padding:22px;background:#fff;box-shadow:0 15px 55px #0002;margin-top:30px}.ty32 .ty-hero{background:#e9f0f7}.ty-cypress{position:relative}.ty-cypress-photo{height:650px;border-radius:32px;overflow:hidden}.ty-cypress-copy{position:relative;width:62%;margin:-220px 0 0 auto;padding:45px;background:#fff;border-radius:20px;box-shadow:0 18px 65px #0002}.ty33 .ty-cards{grid-template-columns:1fr 1fr}.ty-monarch .ty-copy{text-align:center;max-width:950px;margin:0 auto 45px}.ty-monarch .ty-copy p{margin-inline:auto}.ty-monarch .actions{justify-content:center}.ty-monarch h1,.ty34 h2{font-family:Georgia,serif;font-weight:500}.ty-monarch-images{display:grid;grid-template-columns:1.35fr .65fr;gap:20px;align-items:end}.ty-monarch-images>div:first-child{height:510px}.ty-monarch-images>div:last-child{height:340px}.ty-vertex{display:grid;grid-template-columns:1fr 1fr;gap:0;background:#e6ecef}.ty-vertex-media{height:590px;clip-path:polygon(0 0,100% 0,85% 100%,0 100%)}.ty-vertex-copy{padding:65px 50px;align-self:center}.ty-vertex-label{grid-column:1/-1;border-top:2px solid #1c2832;padding:18px;letter-spacing:.15em;font-weight:800}.ty35 .ty-card{display:grid;grid-template-columns:40% 60%}.ty35 .ty-card-photo{height:100%}.ty-harbor{display:grid;grid-template-columns:1fr 1fr 60px;gap:30px;align-items:center}.ty-harbor-media{height:570px}.ty-harbor-side{writing-mode:vertical-rl;font-weight:850;letter-spacing:.15em}.ty36 .ty-cards{grid-template-columns:1fr}.ty36 .ty-card{display:grid;grid-template-columns:35% 65%}.ty36 .ty-card-photo{height:100%}.ty-orbit{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.ty-orbit-ring{width:min(100%,560px);aspect-ratio:1;border-radius:50%;overflow:hidden;border:20px solid #e8f2ed;box-shadow:0 0 0 2px #b4c8be}.ty37 .ty-why{background:#e8f2ed}.ty-foundry{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.ty38 .ty-hero,.ty38 .ty-services,.ty38 .ty-process{background:#16202b;color:#fff}.ty38 .ty-hero p,.ty38 .ty-services p,.ty38 .ty-process p{color:#e3e7ea}.ty-foundry-photo{height:610px;clip-path:polygon(12% 0,100% 0,100% 88%,88% 100%,0 100%,0 12%)}.ty38 .ty-card{background:#283848;color:#fff;border-color:#485c6a}.ty38 .ty-step{background:#283848}.ty-evergreen>.ty-copy{text-align:center;max-width:860px;margin:0 auto 50px}.ty-evergreen>.ty-copy p{margin-inline:auto}.ty-evergreen .actions{justify-content:center}.ty-evergreen-photo{height:450px;overflow:hidden}.ty39 h1,.ty39 h2{font-family:Georgia,serif;font-weight:500}.ty39 .ty-cards{grid-template-columns:1fr 1fr}.ty39 .ty-card{display:grid;grid-template-columns:45% 55%;border:0;border-bottom:1px solid #dce2e4}.ty39 .ty-card-photo{height:100%}.ty-northstar{display:grid;grid-template-columns:160px 1fr 1fr;gap:35px;align-items:center}.ty-northstar-index{align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;border-right:2px solid #b7c5ca;padding:20px 15px 20px 0;font-size:11px}.ty-northstar-photo{height:600px}.ty40 .ty-cards{grid-template-columns:repeat(2,1fr)}.ty40 .ty-card{border-top:3px solid var(--p)}
@media(max-width:900px){.ty-atlas,.ty-beacon,.ty-vertex,.ty-harbor,.ty-orbit,.ty-foundry,.ty-northstar,.ty-why>.wrap,.ty-area>.wrap,.ty-feature>.wrap,.ty-contact>.wrap{grid-template-columns:1fr}.ty-northstar-index{display:none}.ty-harbor-side{writing-mode:horizontal-tb}.ty-cards,.ty31 .ty-cards,.ty33 .ty-cards,.ty39 .ty-cards,.ty40 .ty-cards{grid-template-columns:1fr 1fr}.ty-cypress-copy{width:90%;margin:-90px auto 0}.ty-benefits,.ty-questions{grid-template-columns:1fr}.ty-cta>.wrap{display:block}.ty-atlas-media,.ty-beacon-media,.ty-harbor-media,.ty-northstar-photo,.ty-foundry-photo{height:380px}}
@media(max-width:620px){.ty-cards,.ty31 .ty-cards,.ty33 .ty-cards,.ty39 .ty-cards,.ty40 .ty-cards,.ty-steps{grid-template-columns:1fr}.ty35 .ty-card,.ty36 .ty-card,.ty39 .ty-card{display:block}.ty35 .ty-card-photo,.ty36 .ty-card-photo,.ty39 .ty-card-photo{height:230px}.ty-monarch-images{grid-template-columns:1fr}.ty-monarch-images>div:last-child{display:none}.ty-cypress-photo{height:370px}.ty-cypress-copy{width:100%;margin:0;padding:22px}.ty-vertex-copy{padding:25px}.ty-orbit-ring{max-width:340px;margin:auto}.ty-hero{overflow:hidden}}

/* Phase 4.7J-01: exclusively scoped to 31–40; preserve all previous template families. */
.tic.ty{width:100%;max-width:100%;min-width:0;overflow-x:clip;box-sizing:border-box;--ty-text:#243341;--ty-sub:#435567}
.tic.ty,.tic.ty *,.tic.ty *::before,.tic.ty *::after{box-sizing:border-box}
.tic.ty>section{width:100%;min-width:0;padding-block:clamp(38px,4.6vw,68px)}
.tic.ty>section.ty-hero{padding-block:clamp(30px,4vw,56px)}
.tic.ty>section>.wrap{width:calc(100% - clamp(32px,6vw,112px));max-width:1440px;margin-inline:auto;min-width:0}
.tic.ty .wrap>*,.tic.ty .ty-copy,.tic.ty .ty-cards,.tic.ty .ty-card,.tic.ty .ty-card-body,.tic.ty .ty-benefits,.tic.ty .ty-steps,.tic.ty .ty-questions{min-width:0;max-width:100%}
.tic.ty h1{font-size:clamp(34px,4.2vw,64px);line-height:1.1;overflow-wrap:break-word}
.tic.ty h2{font-size:clamp(27px,3vw,43px);line-height:1.17;overflow-wrap:break-word}
.tic.ty h3{font-size:clamp(18px,1.65vw,23px);line-height:1.3;overflow-wrap:break-word}
.tic.ty p{font-size:clamp(15px,1.1vw,17px);line-height:1.65}
.tic.ty .ty-title{margin-bottom:clamp(18px,2vw,30px)}
.tic.ty .ty-cards{gap:clamp(14px,1.7vw,24px)}
.tic.ty .ty-card-body{padding:clamp(18px,1.8vw,26px)}
.tic.ty .ty-benefits,.tic.ty .ty-steps{gap:clamp(12px,1.5vw,22px)}
.tic.ty .ty-benefit small,.tic.ty .ty-step>span,.tic.ty .ty-card-body>small{display:none}
.tic.ty .ty-benefit{gap:0;padding-block:16px}
.tic.ty .ty-card-photo,.tic.ty .ty-area-photo,.tic.ty .ty-feature-photo{position:relative;overflow:hidden;min-height:0}
.tic.ty .ty-card-photo{height:auto;aspect-ratio:16/10;background:#edf1f2}
.tic.ty .ty-card-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center}
.tic.ty .ty-area-photo,.tic.ty .ty-feature-photo{height:auto;aspect-ratio:16/10;max-height:400px;background:#edf1f2}
.tic.ty .ty-area-photo img,.tic.ty .ty-feature-photo img{width:100%;height:100%;object-fit:contain;object-position:center}
.tic.ty .ty-hero .ty-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.tic.ty .ty-why>.wrap,.tic.ty .ty-area>.wrap,.tic.ty .ty-feature>.wrap,.tic.ty .ty-contact>.wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:center}
.tic.ty .ty-questions{gap:0 clamp(14px,2vw,30px)}
.tic.ty .ty-cta{background:#173343;color:#fff}
.tic.ty .ty-cta h2,.tic.ty .ty-cta p,.tic.ty .ty-cta .eyebrow{color:#fff!important}
.tic.ty .ty-cta>.wrap{gap:24px}
.tic.ty .ty-atlas,.tic.ty .ty-beacon,.tic.ty .ty-harbor,.tic.ty .ty-orbit,.tic.ty .ty-foundry,.tic.ty .ty-northstar{min-width:0}
.tic.ty31 .ty-atlas-media{height:clamp(330px,38vw,500px)}
.tic.ty31 .ty-atlas-copy{padding-block:16px}
.tic.ty32 .ty-beacon-media{height:clamp(380px,44vw,570px)}
.tic.ty32 .ty-beacon{gap:clamp(20px,3vw,44px)}
.tic.ty32 .ty-beacon-form{margin-top:20px}
.tic.ty33 .ty-cypress-photo{height:clamp(340px,41vw,500px)}
.tic.ty33 .ty-cypress-copy{margin-top:-125px;padding:clamp(22px,3vw,42px)}
.tic.ty34 .ty-monarch .ty-copy{margin-bottom:28px}
.tic.ty34 .ty-monarch-images>div:first-child{height:clamp(310px,34vw,450px)}
.tic.ty34 .ty-monarch-images>div:last-child{height:clamp(220px,25vw,320px)}
.tic.ty35 .ty-vertex-media{height:clamp(350px,40vw,510px)}
.tic.ty35 .ty-vertex-copy{padding:clamp(22px,3vw,48px)}
.tic.ty36 .ty-harbor-media{height:clamp(330px,38vw,480px)}
.tic.ty37 .ty-orbit-ring{max-width:460px;border-width:14px}
.tic.ty38 .ty-foundry-photo{height:clamp(350px,40vw,520px)}
.tic.ty38 .ty-hero h1,.tic.ty38 .ty-hero h2,.tic.ty38 .ty-services h2,.tic.ty38 .ty-process h2,.tic.ty38 .ty-services .eyebrow,.tic.ty38 .ty-process .eyebrow{color:#fff!important}
.tic.ty38 .ty-services .ty-card,.tic.ty38 .ty-services .ty-card-body,.tic.ty38 .ty-process .ty-step{background:#283848;color:#f8fbff}
.tic.ty38 .ty-services .ty-card h3,.tic.ty38 .ty-services .ty-card p,.tic.ty38 .ty-process .ty-step h3,.tic.ty38 .ty-process .ty-step p{color:#f8fbff!important;-webkit-text-fill-color:#f8fbff}
.tic.ty38 .ty-card a{color:#7ff5e1!important}
.tic.ty39 .ty-evergreen>.ty-copy{margin-bottom:26px}
.tic.ty39 .ty-evergreen-photo{height:clamp(310px,34vw,420px)}
.tic.ty40 .ty-northstar{grid-template-columns:minmax(105px,12%) minmax(0,1fr) minmax(0,1fr);gap:clamp(18px,2.4vw,34px)}
.tic.ty40 .ty-northstar-photo{height:clamp(330px,38vw,490px)}
.tic.ty35 .ty-card,.tic.ty36 .ty-card,.tic.ty39 .ty-card{grid-template-columns:minmax(0,40%) minmax(0,60%)}
.tic.ty35 .ty-card-photo,.tic.ty36 .ty-card-photo,.tic.ty39 .ty-card-photo{height:100%;aspect-ratio:auto;min-height:185px}
.tic.ty .ty-map iframe{max-width:100%;width:100%}
@media(max-width:1024px){
 .tic.ty .ty-cards,.tic.ty31 .ty-cards,.tic.ty33 .ty-cards,.tic.ty39 .ty-cards,.tic.ty40 .ty-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tic.ty36 .ty-cards{grid-template-columns:1fr}
 .tic.ty .ty-atlas,.tic.ty .ty-beacon,.tic.ty .ty-harbor,.tic.ty .ty-orbit,.tic.ty .ty-foundry,.tic.ty .ty-northstar,.tic.ty .ty-vertex{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .tic.ty40 .ty-northstar-index{display:none}
 .tic.ty .ty-why>.wrap,.tic.ty .ty-area>.wrap,.tic.ty .ty-feature>.wrap,.tic.ty .ty-contact>.wrap{gap:26px}
}
@media(max-width:767px){
 .tic.ty>section>.wrap{width:calc(100% - 36px)}
 .tic.ty .ty-atlas,.tic.ty .ty-beacon,.tic.ty .ty-harbor,.tic.ty .ty-orbit,.tic.ty .ty-foundry,.tic.ty .ty-northstar,.tic.ty .ty-vertex,.tic.ty .ty-why>.wrap,.tic.ty .ty-area>.wrap,.tic.ty .ty-feature>.wrap,.tic.ty .ty-contact>.wrap{grid-template-columns:minmax(0,1fr)}
 .tic.ty .ty-cards,.tic.ty31 .ty-cards,.tic.ty33 .ty-cards,.tic.ty39 .ty-cards,.tic.ty40 .ty-cards,.tic.ty .ty-benefits,.tic.ty .ty-steps,.tic.ty .ty-questions{grid-template-columns:minmax(0,1fr)}
 .tic.ty35 .ty-card,.tic.ty36 .ty-card,.tic.ty39 .ty-card{display:flex;flex-direction:column}
 .tic.ty35 .ty-card-photo,.tic.ty36 .ty-card-photo,.tic.ty39 .ty-card-photo{height:auto;aspect-ratio:16/10;min-height:0}
 .tic.ty .ty-hero .ty-atlas-media,.tic.ty .ty-hero .ty-beacon-media,.tic.ty .ty-hero .ty-harbor-media,.tic.ty .ty-hero .ty-foundry-photo,.tic.ty .ty-hero .ty-northstar-photo,.tic.ty .ty-hero .ty-vertex-media{height:auto;aspect-ratio:16/10;min-height:0}
 .tic.ty33 .ty-cypress-copy{width:100%;margin:0;padding:22px;box-shadow:none}
 .tic.ty34 .ty-monarch-images{grid-template-columns:1fr}
 .tic.ty34 .ty-monarch-images>div:last-child{display:none}
 .tic.ty .ty-cta>.wrap{display:flex;flex-direction:column;align-items:stretch;gap:18px}
 .tic.ty .actions{display:flex;flex-wrap:wrap;max-width:100%}
 .tic.ty36 .ty-harbor-side{writing-mode:horizontal-tb}
 .tic.ty37 .ty-orbit-ring{width:min(100%,340px)}
 .tic.ty40 .ty-northstar-photo{height:auto;aspect-ratio:16/10}
}
@media(max-width:420px){.tic.ty>section>.wrap{width:calc(100% - 28px)}.tic.ty h1{font-size:clamp(30px,9vw,40px)}.tic.ty .ty-card-body{padding:18px}}

/* Phase 4.7J-02: screenshot-led refinements, scoped strictly to Templates 31–40. */
.tic.ty .ty-card-photo{background:#e8eff0}
.tic.ty .ty-card-photo img{object-fit:cover;object-position:center}
.tic.ty .ty-card-body{display:flex;flex-direction:column;align-items:flex-start;gap:9px}
.tic.ty .ty-card-body h3,.tic.ty .ty-card-body p{margin:0}
.tic.ty .ty-card-body a{margin-top:auto}
.tic.ty .ty-cards{align-items:stretch}
.tic.ty .ty-benefits{align-items:start}
.tic.ty .ty-area-photo img,.tic.ty .ty-feature-photo img{object-fit:cover}
.tic.ty .ty-area-photo,.tic.ty .ty-feature-photo{border-radius:4px}
.tic.ty .ty-contact>.wrap{align-items:start}
.tic.ty .ty-contact>.wrap>div:last-child{min-width:0}
.tic.ty .ty-hero .ty-copy h1{max-width:19ch}
.tic.ty .ty-map{padding-top:12px}
/* Keystone: equalized hero and calmer two-column cards */
.tic.ty31 .ty-atlas{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.tic.ty31 .ty-atlas-media{height:clamp(310px,34vw,460px)}
.tic.ty31 .ty-card-photo{aspect-ratio:16/9}
/* Signal: avoid towering lead form and oversized hero media */
.tic.ty32 .ty-beacon{align-items:center}
.tic.ty32 .ty-beacon-media{height:clamp(300px,34vw,470px);clip-path:polygon(0 0,100% 0,100% 100%,4% 100%)}
.tic.ty32 .ty-beacon-form{padding:18px;box-shadow:0 10px 30px #00000014}
/* Cypress: dark surfaces need restrained padding and clear contrast */
.tic.ty33 .ty-cypress-photo{height:clamp(310px,36vw,455px)}
.tic.ty33 .ty-cypress-copy{margin-top:-95px}
.tic.ty33 .ty-card-photo{aspect-ratio:16/9}
/* Vellum: preserve editorial split, avoid excessive tall image crops */
.tic.ty34 .ty-monarch-images{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.tic.ty34 .ty-monarch-images>div:first-child{height:clamp(260px,30vw,400px)}
.tic.ty34 .ty-monarch-images>div:last-child{height:clamp(210px,23vw,300px)}
/* Prism: two-column horizontal cards need enough text width */
.tic.ty35 .ty-card{grid-template-columns:minmax(0,38%) minmax(0,62%)}
.tic.ty35 .ty-card-photo{min-height:200px}
/* Brookside: horizontal service rows and image proportions */
.tic.ty36 .ty-card{grid-template-columns:minmax(0,34%) minmax(0,66%)}
.tic.ty36 .ty-card-photo{min-height:190px}
/* Orbit: avoid narrow three-column side-by-side cards */
.tic.ty37 .ty-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.tic.ty37 .ty-card{display:grid;grid-template-columns:minmax(0,43%) minmax(0,57%)}
.tic.ty37 .ty-card-photo{height:100%;aspect-ratio:auto;min-height:190px}
.tic.ty37 .ty-orbit-ring{max-width:410px}
/* Ironclad: darker surfaces with legible CTA and balanced cards */
.tic.ty38 .ty-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.tic.ty38 .ty-card-photo{aspect-ratio:16/9}
/* Evergreen: overlay card remains readable and the hero stays contained */
.tic.ty39 .ty-evergreen-photo{height:clamp(280px,32vw,395px)}
.tic.ty39 .ty-card{grid-template-columns:minmax(0,42%) minmax(0,58%)}
/* Compass: sidebar stays compact while hero copy gets breathing room */
.tic.ty40 .ty-northstar{grid-template-columns:minmax(85px,11%) minmax(0,1fr) minmax(0,1fr)}
.tic.ty40 .ty-northstar-photo{height:clamp(300px,33vw,445px)}
@media(max-width:1024px){
 .tic.ty37 .ty-cards,.tic.ty38 .ty-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tic.ty37 .ty-card{display:block}
 .tic.ty37 .ty-card-photo{height:auto;aspect-ratio:16/10;min-height:0}
}
@media(max-width:767px){
 .tic.ty31 .ty-atlas,.tic.ty40 .ty-northstar{grid-template-columns:minmax(0,1fr)}
 .tic.ty37 .ty-cards,.tic.ty38 .ty-cards{grid-template-columns:minmax(0,1fr)}
 .tic.ty35 .ty-card,.tic.ty36 .ty-card,.tic.ty37 .ty-card,.tic.ty39 .ty-card{display:flex;flex-direction:column}
 .tic.ty35 .ty-card-photo,.tic.ty36 .ty-card-photo,.tic.ty37 .ty-card-photo,.tic.ty39 .ty-card-photo{height:auto;min-height:0;aspect-ratio:16/10}
 .tic.ty33 .ty-cypress-copy{margin-top:0}
 .tic.ty34 .ty-monarch-images{grid-template-columns:1fr}
 .tic.ty .ty-hero .ty-copy h1{max-width:none}
}


/* Phase 4.7J-03: isolated corrections from user screenshots, Templates 35/36/37/39 only. */
/* Preserve natural image crop: no 100%-height stretched image wrappers in horizontal cards. */
.tic.ty35 .ty-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.tic.ty35 .ty-card{display:flex;flex-direction:column;min-width:0;height:100%}
.tic.ty35 .ty-card-photo{height:auto;min-height:0;aspect-ratio:16/9;overflow:hidden}
.tic.ty35 .ty-card-body{flex:1;padding:20px 22px 24px}
.tic.ty35 .ty-card-photo img{width:100%;height:100%;object-fit:cover}
.tic.ty36 .ty-cards{grid-template-columns:1fr;gap:18px}
.tic.ty36 .ty-card{display:grid;grid-template-columns:minmax(220px,36%) minmax(0,1fr);align-items:stretch;min-height:190px}
.tic.ty36 .ty-card-photo{height:100%;min-height:190px;aspect-ratio:auto;overflow:hidden}
.tic.ty36 .ty-card-body{padding:clamp(20px,3vw,32px);align-self:center}
.tic.ty36 .ty-card-photo img{width:100%;height:100%;object-fit:cover}
.tic.ty37 .ty-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.tic.ty37 .ty-card{display:flex;flex-direction:column;height:100%}
.tic.ty37 .ty-card-photo{height:auto;min-height:0;aspect-ratio:16/9;overflow:hidden}
.tic.ty37 .ty-card-body{padding:22px;flex:1}
.tic.ty37 .ty-orbit{gap:clamp(24px,5vw,65px)}
.tic.ty37 .ty-orbit-ring{width:min(100%,390px);max-width:390px;aspect-ratio:1;justify-self:center;overflow:hidden}
.tic.ty37 .ty-orbit-ring img{width:100%;height:100%;object-fit:cover}
.tic.ty39 .ty-evergreen-photo{height:auto;aspect-ratio:16/6;min-height:260px;max-height:420px;overflow:hidden}
.tic.ty39 .ty-evergreen-photo img{width:100%;height:100%;object-fit:cover}
.tic.ty39 .ty-evergreen>.ty-copy{margin-bottom:clamp(20px,3vw,38px)}
.tic.ty39 .ty-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.tic.ty39 .ty-card{display:flex;flex-direction:column;min-width:0;height:100%;border:1px solid #dce2e4}
.tic.ty39 .ty-card-photo{height:auto;min-height:0;aspect-ratio:16/9;overflow:hidden}
.tic.ty39 .ty-card-body{padding:20px 22px;flex:1}
.tic.ty39 .ty-card-photo img{width:100%;height:100%;object-fit:cover}
@media(max-width:900px){
 .tic.ty35 .ty-cards,.tic.ty37 .ty-cards,.tic.ty39 .ty-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tic.ty36 .ty-card{grid-template-columns:minmax(180px,38%) minmax(0,1fr)}
 .tic.ty37 .ty-orbit-ring{max-width:320px}
}
@media(max-width:620px){
 .tic.ty35 .ty-cards,.tic.ty37 .ty-cards,.tic.ty39 .ty-cards{grid-template-columns:minmax(0,1fr)}
 .tic.ty36 .ty-card{display:flex;flex-direction:column;min-height:0}
 .tic.ty36 .ty-card-photo{height:auto;min-height:0;aspect-ratio:16/9}
 .tic.ty39 .ty-evergreen-photo{min-height:0;aspect-ratio:16/10}
}


/* Phase 4.7J-04: preview images contain typography and must never be clipped.
   Override earlier cover declarations at the END of the stylesheet. */
.tic.ty .ty-hero .ty-photo,
.tic.ty .ty-card-photo img,
.tic.ty .ty-feature-photo img,
.tic.ty .ty-area-photo img{object-fit:contain!important;object-position:center center!important}
.tic.ty .ty-card-photo,.tic.ty .ty-feature-photo,.tic.ty .ty-area-photo{background:#eaf0f1}
/* Full rectangular image visible in Template 39's wide hero; no forced crop. */
.tic.ty39 .ty-evergreen-photo{height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:auto!important;background:#eaf0f1}
.tic.ty39 .ty-evergreen-photo img{display:block;position:static!important;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important}
/* Template 37's landscape artwork cannot fit inside a circle without losing content.
   Use a gently rounded 16:9 frame rather than crop the asset or leave a half-empty ring. */
.tic.ty37 .ty-orbit-ring{width:100%!important;max-width:540px!important;aspect-ratio:16/9!important;border-radius:22px!important;border:0!important;box-shadow:0 0 0 1px #b4c8be!important;background:#eaf0f1!important}
.tic.ty37 .ty-orbit-ring img{display:block;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important}
/* Service cards: preserve artwork and prevent overlaid captions from being clipped. */
.tic.ty35 .ty-card-photo img,.tic.ty36 .ty-card-photo img,.tic.ty37 .ty-card-photo img,.tic.ty39 .ty-card-photo img{object-fit:contain!important}
.tic.ty36 .ty-card-photo{height:auto!important;min-height:0!important;aspect-ratio:16/9!important;align-self:center}
.tic.ty36 .ty-card{min-height:0!important;align-items:center}
@media(max-width:700px){.tic.ty37 .ty-orbit-ring{max-width:100%!important}.tic.ty36 .ty-card{display:flex;flex-direction:column}}
.tz{--tz-ink:#172733;--tz-light:#f1f5f5;color:var(--tz-ink)}.tz>section{padding:clamp(54px,6.5vw,90px) 0}.tz h1{font-size:clamp(42px,5.5vw,76px);line-height:1.05;letter-spacing:-.04em}.tz h2{font-size:clamp(30px,3.4vw,48px);line-height:1.14}.tz p{line-height:1.65}.tz .tz-image{width:100%;height:100%;object-fit:cover;display:block}.tz-copy p{max-width:650px}.tz .tz-hero{padding:60px 0}.tz-section-head{margin-bottom:34px;max-width:780px}.tz-services{background:var(--tz-light)}.tz-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.tz-service{min-width:0;background:#fff;border:1px solid #dae3e7;overflow:hidden}.tz-service-photo{height:215px}.tz-service-body{padding:23px}.tz-service-body h3{font-size:22px}.tz-service-body a{font-weight:800;color:var(--p)}.tz-intro>.wrap,.tz-area>.wrap,.tz-contact>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start}.tz-benefits{display:grid;grid-template-columns:1fr 1fr;gap:18px}.tz-benefit{display:grid;grid-template-columns:30px 1fr;gap:10px;padding:18px 0;border-top:1px solid #cdd8dc}.tz-benefit small,.tz-step span{font-weight:800;color:var(--p)}.tz-step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tz-step{background:#fff;border-top:3px solid var(--p);padding:24px}.tz-process{background:#f7f9fa}.tz-area{background:#e8eff1}.tz-area-photo{height:420px}.tz-questions{display:grid;grid-template-columns:1fr 1fr;gap:10px 32px}.tz-question{padding:19px 0;border-bottom:1px solid #cad5da}.tz-question summary{font-weight:750;cursor:pointer}.tz-cta{background:var(--s);color:#fff}.tz-cta>.wrap{display:flex;align-items:center;justify-content:space-between;gap:45px}.tz-cta h2,.tz-cta p,.tz-cta .eyebrow{color:#fff!important}.tz-contact .lead{background:#fff;color:#172733}.tz-contact input,.tz-contact select,.tz-contact textarea{background:#fff!important;color:#172733!important}.tz-gallery>.wrap{display:grid;grid-template-columns:1.4fr .6fr;gap:20px}.tz-gallery-main{height:450px}.tz-gallery-side{height:330px;align-self:end}
.tz-panorama{position:relative;min-height:620px;display:flex;align-items:end;color:#fff}.tz-panorama-media{position:absolute;inset:0}.tz-panorama-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#071925eb,#07192550)}.tz-panorama-copy{position:relative;width:100%}.tz41 .tz-hero h1,.tz41 .tz-hero p,.tz41 .tz-hero .eyebrow{color:#fff!important}.tz41 .tz-service{display:grid;grid-template-columns:38% 62%}.tz41 .tz-service-photo{height:100%}.tz41 .tz-service-grid{grid-template-columns:1fr}
.tz-dashboard>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:30px}.tz-dashboard-main{background:var(--p);padding:50px;color:#fff}.tz-dashboard-main h1,.tz-dashboard-main p,.tz-dashboard-main .eyebrow{color:#fff!important}.tz-dashboard-side{display:grid;grid-template-rows:1.5fr 1fr;gap:14px;height:570px;min-height:0}.tz-dashboard-side>div{min-height:0;overflow:hidden}.tz42 .tz-service-grid{grid-template-columns:repeat(2,1fr)}
.tz-noble{text-align:center}.tz-noble .tz-copy{max-width:980px;margin:auto}.tz-noble .tz-copy p{margin-inline:auto}.tz-noble .actions{justify-content:center}.tz-noble h1,.tz43 h2{font-family:Georgia,serif;font-weight:500}.tz-noble-image{height:440px;margin-top:42px}.tz43 .tz-service-grid{grid-template-columns:repeat(2,1fr)}.tz43 .tz-service{border:0;border-bottom:1px solid #cad5da}
.tz-seabrook>.wrap{position:relative;min-height:620px}.tz-seabrook-photo{position:absolute;inset:0 20% 0 0;border-radius:28px;overflow:hidden}.tz-seabrook-card{position:relative;margin:110px 0 0 auto;width:52%;background:#fff;padding:40px;border-radius:20px;box-shadow:0 20px 60px #0002}.tz44 .tz-service{border-radius:18px}.tz44 .tz-services{background:#fffaf2}
.tz-momentum{background:#152b38;color:#fff}.tz-momentum>.wrap{display:grid;grid-template-columns:1fr .8fr;gap:50px}.tz-momentum h1,.tz-momentum p,.tz-momentum .eyebrow{color:#fff!important}.tz-momentum-form{background:#fff;padding:26px;border-radius:14px;color:#172733}.tz-momentum-form p,.tz-momentum-form h2,.tz-momentum-form label{color:#172733!important}.tz-momentum-benefits{margin-top:26px}.tz-momentum-benefits .tz-benefit{border-color:#ffffff45}.tz45 .tz-service-grid{grid-template-columns:repeat(2,1fr)}
.tz-blueprint{background:#e9f0f3}.tz-blueprint>.wrap{display:grid;grid-template-columns:150px 1fr 1fr;gap:30px;align-items:center}.tz-blueprint aside{font-size:12px;line-height:2.6;border-right:2px solid var(--p);height:100%}.tz-blueprint-photo{height:530px}.tz46 .tz-step{background:#e5eef2;border:1px solid #9aafbb}.tz46 .tz-service{border-left:5px solid var(--p)}
.tz-aurora>.wrap{position:relative;min-height:620px}.tz-aurora-photo{position:absolute;inset:0 0 0 24%;border-radius:28px;overflow:hidden}.tz-aurora-panel{position:relative;width:54%;top:75px;background:#fff;padding:45px;border-radius:18px;box-shadow:0 20px 70px #0002}.tz47 .tz-intro{background:#eff4f8}.tz47 .tz-service{border-radius:15px}
.tz-redwood>.wrap{display:grid;grid-template-columns:65px 1fr 1fr;gap:26px;align-items:center}.tz-redwood-rail{writing-mode:vertical-rl;display:flex;gap:25px;align-items:center;font-size:11px;font-weight:800;letter-spacing:.15em}.tz-redwood-photo{height:610px}.tz48 .tz-intro{background:#f4f0e9}.tz48 .tz-service-grid{grid-template-columns:repeat(2,1fr)}
.tz-mosaic>.wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:45px;align-items:center}.tz-mosaic-images{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:270px 230px;gap:12px}.tz-mosaic-images>div:first-child{grid-row:span 2}.tz-mosaic-images>div{overflow:hidden}.tz49 .tz-service-grid{grid-template-columns:repeat(2,1fr)}.tz49 .tz-service:nth-child(3n+1){grid-column:span 2;display:grid;grid-template-columns:1fr 1fr}.tz49 .tz-service:nth-child(3n+1) .tz-service-photo{height:100%}
.tz-waypoint{text-align:center;background:#f2f6f4}.tz-waypoint .tz-copy{max-width:900px;margin:auto}.tz-waypoint .tz-copy p{margin-inline:auto}.tz-waypoint .actions{justify-content:center}.tz-waypoint-photo{height:440px;margin-top:40px}.tz50 .tz-process{background:#e9f0e9}.tz50 .tz-step{border-radius:16px;border-top:0;border-left:5px solid var(--p)}.tz50 .tz-service-grid{grid-template-columns:repeat(2,1fr)}
@media(max-width:900px){.tz-intro>.wrap,.tz-area>.wrap,.tz-contact>.wrap,.tz-dashboard>.wrap,.tz-momentum>.wrap,.tz-blueprint>.wrap,.tz-redwood>.wrap,.tz-mosaic>.wrap{grid-template-columns:1fr}.tz-blueprint aside,.tz-redwood-rail{display:none}.tz-service-grid,.tz42 .tz-service-grid,.tz43 .tz-service-grid,.tz45 .tz-service-grid,.tz48 .tz-service-grid,.tz49 .tz-service-grid,.tz50 .tz-service-grid{grid-template-columns:1fr 1fr}.tz-benefits,.tz-questions{grid-template-columns:1fr}.tz-cta>.wrap{display:block}.tz-seabrook-photo,.tz-aurora-photo{position:relative;inset:auto;height:380px}.tz-seabrook-card,.tz-aurora-panel{margin:-55px auto 0;width:90%;top:auto}.tz-seabrook>.wrap,.tz-aurora>.wrap{min-height:auto}.tz-panorama{min-height:500px}.tz-gallery-main{height:330px}.tz-gallery-side{height:260px}}
@media(max-width:620px){.tz-service-grid,.tz42 .tz-service-grid,.tz43 .tz-service-grid,.tz45 .tz-service-grid,.tz48 .tz-service-grid,.tz49 .tz-service-grid,.tz50 .tz-service-grid,.tz-step-grid,.tz-gallery>.wrap{grid-template-columns:1fr}.tz41 .tz-service,.tz49 .tz-service:nth-child(3n+1){display:block;grid-column:auto}.tz41 .tz-service-photo,.tz49 .tz-service:nth-child(3n+1) .tz-service-photo{height:220px}.tz-mosaic-images{grid-template-rows:180px 150px}.tz-noble-image,.tz-waypoint-photo{height:290px}.tz-dashboard-side{height:340px}.tz-redwood-photo,.tz-blueprint-photo{height:330px}.tz-seabrook-card,.tz-aurora-panel{width:100%;padding:24px;margin:0}.tz-gallery-side{display:none}.tz-momentum-form{padding:16px}}

/* Phase 4.7K-01: image visibility, responsive balance and phone-first flow. */
.tz,.tz *{box-sizing:border-box}
.tz .wrap{width:min(100% - 40px,1220px);margin-inline:auto}
.tz .tz-image{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#e9f1f2}
.tz :is(.tz-panorama-media,.tz-service-photo,.tz-gallery-main,.tz-gallery-side,.tz-area-photo,.tz-noble-image,.tz-waypoint-photo,.tz-redwood-photo,.tz-blueprint-photo,.tz-seabrook-photo,.tz-aurora-photo,.tz-dashboard-side>div,.tz-mosaic-images>div){overflow:hidden;background:#e9f1f2}
.tz :is(.tz-service-photo,.tz-gallery-main,.tz-gallery-side,.tz-area-photo,.tz-noble-image,.tz-waypoint-photo,.tz-redwood-photo,.tz-blueprint-photo,.tz-seabrook-photo,.tz-aurora-photo,.tz-dashboard-side>div,.tz-mosaic-images>div) img{object-fit:contain!important;object-position:center!important}
.tz .tz-service-photo{height:auto;min-height:195px;aspect-ratio:16/10}
.tz .tz-service{display:flex;flex-direction:column;min-width:0}
.tz .tz-service-body{flex:1;display:flex;flex-direction:column;gap:10px;padding:clamp(18px,2vw,25px)}
.tz .tz-service-body h3{font-size:clamp(19px,1.8vw,24px);line-height:1.2;margin:0;overflow-wrap:anywhere}
.tz .tz-service-body p{margin:0;overflow-wrap:anywhere}
.tz .tz-service-body a{margin-top:auto;align-self:flex-start}
.tz .tz-benefit{grid-template-columns:minmax(0,1fr)}
.tz .tz-step{min-width:0}
.tz .tz-hero h1{font-size:clamp(34px,4.5vw,64px);overflow-wrap:break-word}
.tz .tz-copy{min-width:0}
.tz .tz-panorama-media img{object-fit:cover!important}
.tz .tz-panorama-copy{padding-block:clamp(45px,7vw,95px)}
.tz .tz-panorama{min-height:520px}
.tz .tz-panorama-media{background:#12333e}
.tz .tz-panorama-media:after{background:linear-gradient(90deg,#071925ed,#071925a6 50%,#07192555)}
.tz41 .tz-service{display:grid;grid-template-columns:minmax(220px,38%) minmax(0,1fr)}
.tz41 .tz-service-photo{height:100%;min-height:230px;aspect-ratio:auto}
.tz49 .tz-service:nth-child(3n+1){grid-template-columns:minmax(220px,1fr) minmax(0,1fr)}
.tz49 .tz-service:nth-child(3n+1) .tz-service-photo{height:100%;aspect-ratio:auto}
.tz .tz-area-photo{height:auto;aspect-ratio:16/10;min-height:260px}
.tz .tz-gallery-main{height:auto;aspect-ratio:16/10}
.tz .tz-gallery-side{height:auto;aspect-ratio:4/3}
.tz .tz-noble-image,.tz .tz-waypoint-photo{height:auto;aspect-ratio:16/8;max-height:490px}
.tz .tz-dashboard-side{min-width:0}
.tz .tz-dashboard-side>div{min-height:0}
.tz .tz-momentum-form{align-self:center;border-radius:14px;box-shadow:0 16px 36px #07192524}
.tz .tz-momentum-form h2{font-size:clamp(24px,2.6vw,36px);line-height:1.18;color:#172733!important}
.tz .tz-momentum-form p{color:#172733!important}
.tz .tz-momentum-form .actions{margin-top:24px}
.tz .tz-cta .actions{flex-shrink:0}
.tz .tz-contact .actions{margin-top:18px}
@media(max-width:900px){
 .tz .tz-hero{padding:40px 0}
 .tz .tz-dashboard>.wrap,.tz .tz-momentum>.wrap,.tz .tz-blueprint>.wrap,.tz .tz-redwood>.wrap,.tz .tz-mosaic>.wrap{display:grid;grid-template-columns:minmax(0,1fr)}
 .tz .tz-seabrook>.wrap,.tz .tz-aurora>.wrap{min-height:0}
 .tz .tz-seabrook-photo,.tz .tz-aurora-photo{position:relative;inset:auto;height:auto;aspect-ratio:16/10}
 .tz .tz-seabrook-card,.tz .tz-aurora-panel{position:relative;top:auto;margin:-30px auto 0;width:min(94%,720px)}
 .tz .tz-panorama{min-height:440px}
}
@media(max-width:620px){
 .tz .wrap{width:calc(100% - 28px)}
 .tz>section{padding:44px 0}
 .tz .tz-service-grid,.tz42 .tz-service-grid,.tz43 .tz-service-grid,.tz45 .tz-service-grid,.tz48 .tz-service-grid,.tz49 .tz-service-grid,.tz50 .tz-service-grid{grid-template-columns:minmax(0,1fr)}
 .tz41 .tz-service,.tz49 .tz-service:nth-child(3n+1){display:flex;flex-direction:column;grid-column:auto}
 .tz41 .tz-service-photo,.tz49 .tz-service:nth-child(3n+1) .tz-service-photo{height:auto;aspect-ratio:16/10;min-height:0}
 .tz .tz-step-grid,.tz .tz-benefits,.tz .tz-questions{grid-template-columns:minmax(0,1fr)}
 .tz .tz-noble-image,.tz .tz-waypoint-photo{height:auto;aspect-ratio:16/10}
 .tz .tz-gallery>.wrap{display:block}
 .tz .tz-gallery-side{display:none}
 .tz .tz-cta>.wrap{display:block}
 .tz .tz-cta .actions{margin-top:22px}
 .tz .tz-panorama{min-height:410px}
 .tz .tz-panorama-copy{padding-block:36px}
 .tz .tz-seabrook-card,.tz .tz-aurora-panel{width:100%;margin:0;padding:24px}
}


/* Phase 4.7K-02: screenshot-led, template-specific layout corrections. */
.tz{overflow-x:clip}
.tz .tz-hero{overflow:hidden}
.tz .tz-service-grid{align-items:stretch}
.tz .tz-service-photo{position:relative;min-height:0;aspect-ratio:16/9;height:auto}
.tz .tz-service-photo .tz-image{width:100%;height:100%;object-fit:contain!important}
.tz .tz-service-body{min-height:0}
.tz .tz-service-body p{line-height:1.5}
.tz .tz-service-grid:has(> :last-child:nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr))}
.tz .tz-gallery>.wrap{align-items:center}
.tz .tz-gallery-side{align-self:center}
.tz .tz-gallery-main,.tz .tz-gallery-side{max-height:none}
.tz .tz-contact>.wrap{align-items:center}
.tz .tz-contact{padding-bottom:32px}
.tz .tz-map{padding-top:20px}
.tz .tz-step-grid{align-items:stretch}
/* 41: centered hero photograph with no excessive blank canvas. */
.tz41 .tz-panorama{min-height:0;display:block;background:#f0f5f3;color:var(--tz-ink)}
.tz41 .tz-panorama-media{position:relative;inset:auto;width:min(100% - 40px,1050px);height:auto;aspect-ratio:16/9;margin:28px auto 0}
.tz41 .tz-panorama-media:after{display:none}
.tz41 .tz-panorama-media img{object-fit:contain!important}
.tz41 .tz-panorama-copy{padding-block:30px 10px;text-align:center}
.tz41 .tz-hero h1,.tz41 .tz-hero p,.tz41 .tz-hero .eyebrow{color:var(--tz-ink)!important}
.tz41 .tz-hero .actions{justify-content:center}
.tz41 .tz-panorama{display:flex;flex-direction:column-reverse;gap:8px}
.tz41 .tz-service-photo{height:auto;aspect-ratio:16/10}
/* 42: avoid masonry-like empty second row; use a balanced two-image column. */
.tz42 .tz-dashboard>.wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch}
.tz42 .tz-dashboard-side{grid-template-rows:repeat(2,minmax(0,1fr));height:auto;min-height:360px}
.tz42 .tz-dashboard-side>div{aspect-ratio:16/9;min-height:0}
.tz42 .tz-dashboard-main{display:flex;align-items:center;min-width:0}
/* 43: prevent floating half-empty gallery and keep images proportional. */
.tz43 .tz-noble-image{aspect-ratio:16/9;height:auto;max-height:none;width:min(100%,1050px);margin-inline:auto}
.tz43 .tz-gallery>.wrap{grid-template-columns:minmax(0,1fr) minmax(0,0.5fr)}
.tz43 .tz-gallery-main,.tz43 .tz-gallery-side{height:auto;aspect-ratio:16/10}
/* 44: content must not obscure important image areas. */
.tz44 .tz-seabrook>.wrap{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:20px;min-height:0}
.tz44 .tz-seabrook-photo{position:relative;inset:auto;height:auto;aspect-ratio:16/10;border-radius:18px}
.tz44 .tz-seabrook-card{position:relative;inset:auto;width:auto;margin:0;padding:clamp(22px,3vw,42px);box-shadow:0 10px 32px #0001}
/* 45: keep benefit copy readable even if global template heading colors override inherited color. */
.tz.tz45 .tz-momentum .tz-momentum-benefits .tz-benefit h3{color:#fff!important;-webkit-text-fill-color:#fff!important;opacity:1!important}
.tz.tz45 .tz-momentum .tz-momentum-benefits .tz-benefit p{color:#e9f3f6!important;-webkit-text-fill-color:#e9f3f6!important;opacity:1!important}
/* 45: benefit copy must be readable on dark hero. */
.tz45 .tz-momentum-benefits .tz-benefit h3,.tz45 .tz-momentum-benefits .tz-benefit p{color:#fff!important;opacity:1!important}
.tz45 .tz-momentum-benefits .tz-benefit{border-color:#ffffff65}
.tz45 .tz-momentum-form{align-self:stretch;display:flex;flex-direction:column;justify-content:center}
/* 46: make four cards a balanced two-by-two grid. */
.tz46 .tz-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.tz46 .tz-service{border-left:3px solid var(--p)}
/* 47: remove collision between overlapping panel and image. */
.tz47 .tz-aurora>.wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:20px;min-height:0;align-items:center}
.tz47 .tz-aurora-photo{position:relative;inset:auto;height:auto;aspect-ratio:16/10}
.tz47 .tz-aurora-panel{position:relative;inset:auto;width:auto;top:auto;margin:0;padding:clamp(24px,3vw,42px);box-shadow:0 10px 30px #0001}
/* 48: prevent unusually tall single hero image. */
.tz48 .tz-redwood-photo{height:auto;aspect-ratio:4/3;min-height:0}
/* 49: use equal-size photo tiles rather than tall awkward first cell. */
.tz49 .tz-mosaic-images{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));aspect-ratio:1.2;gap:12px}
.tz49 .tz-mosaic-images>div:first-child{grid-row:span 2}
.tz49 .tz-mosaic-images>div{min-height:0}
.tz49 .tz-mosaic-copy{min-width:0}
/* 50: keep full hero image and its embedded captions visible. */
.tz50 .tz-waypoint-photo{height:auto;aspect-ratio:16/9;max-height:none;width:min(100%,1050px);margin:34px auto 0}
.tz50 .tz-waypoint-photo img{object-fit:contain!important}
@media(max-width:900px){
 .tz42 .tz-dashboard>.wrap,.tz44 .tz-seabrook>.wrap,.tz47 .tz-aurora>.wrap{grid-template-columns:minmax(0,1fr)}
 .tz42 .tz-dashboard-side{min-height:0;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;height:auto}
 .tz44 .tz-seabrook-card,.tz47 .tz-aurora-panel{width:100%;margin:0}
 .tz46 .tz-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
 .tz41 .tz-panorama-media{width:calc(100% - 28px)}
 .tz42 .tz-dashboard-side{grid-template-columns:1fr}
 .tz46 .tz-service-grid{grid-template-columns:1fr}
 .tz49 .tz-mosaic-images{aspect-ratio:auto;grid-template-rows:180px 180px}
 .tz .tz-service-grid:has(> :last-child:nth-child(4)){grid-template-columns:1fr}
 .tz43 .tz-gallery>.wrap{display:block}
 .tz44 .tz-seabrook-photo,.tz47 .tz-aurora-photo{aspect-ratio:16/10}
}


/* Phase 4.7K-03: width and whitespace audit — scoped to template family 41–50 only. */
.tz{width:100%;max-width:none;min-width:0}
.tz>section{width:100%;max-width:none;padding-block:clamp(30px,3.2vw,58px)}
.tz .wrap,.tz section>.wrap{width:calc(100% - clamp(32px,5vw,112px))!important;max-width:1680px!important;margin-inline:auto!important;box-sizing:border-box}
.tz .tz-hero{padding-block:clamp(24px,3vw,48px)}
.tz .tz-section-head{margin-bottom:clamp(16px,2vw,26px)}
.tz .tz-service-grid{gap:clamp(12px,1.35vw,22px)}
.tz .tz-service-body{padding:clamp(15px,1.6vw,23px)}
.tz .tz-service-body p{margin-block:0}
.tz .tz-step-grid{gap:clamp(12px,1.4vw,20px)}
.tz .tz-step{padding:clamp(16px,1.6vw,24px)}
.tz .tz-intro>.wrap,.tz .tz-area>.wrap,.tz .tz-contact>.wrap{gap:clamp(24px,4vw,70px);align-items:center}
.tz .tz-gallery>.wrap{gap:clamp(12px,1.6vw,24px)}
.tz .tz-gallery-main,.tz .tz-gallery-side{height:auto;aspect-ratio:16/10;min-height:0}
.tz .tz-gallery-side{align-self:center}
.tz .tz-area-photo{height:auto;aspect-ratio:16/10;min-height:0}
.tz .tz-questions{gap:0 clamp(18px,3vw,42px)}
.tz .tz-question{padding:clamp(12px,1.2vw,18px) 0}
.tz .tz-cta>.wrap{gap:clamp(20px,3vw,48px)}
.tz .tz-cta .actions{margin-top:0}
.tz .tz-contact{padding-bottom:clamp(24px,3vw,48px)}
.tz .tz-contact>.wrap{align-items:start}
/* Remove hard caps that left hero images much narrower than the content column. */
.tz41 .tz-panorama-media{width:calc(100% - clamp(32px,5vw,112px));max-width:1680px;aspect-ratio:16/8.5}
.tz43 .tz-noble-image,.tz50 .tz-waypoint-photo{width:100%;max-width:none;aspect-ratio:16/8.5}
.tz41 .tz-panorama-copy{padding-block:clamp(12px,2vw,28px)}
.tz42 .tz-dashboard>.wrap{gap:clamp(14px,2vw,32px)}
.tz42 .tz-dashboard-main{padding:clamp(24px,3.2vw,55px)}
.tz42 .tz-dashboard-side{min-height:0}
.tz44 .tz-seabrook>.wrap,.tz47 .tz-aurora>.wrap{gap:clamp(18px,2vw,32px)}
.tz46 .tz-blueprint>.wrap{grid-template-columns:clamp(95px,10vw,155px) minmax(0,1fr) minmax(0,1.1fr);gap:clamp(16px,2vw,32px)}
.tz48 .tz-redwood>.wrap{grid-template-columns:clamp(32px,4vw,65px) minmax(0,1fr) minmax(0,1.1fr)}
.tz49 .tz-mosaic>.wrap{gap:clamp(20px,3vw,50px)}
/* A four-service site should use two balanced columns instead of a three-plus-one row. */
.tz .tz-service-grid:has(> :last-child:nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:900px){
 .tz .wrap,.tz section>.wrap{width:calc(100% - 36px)!important}
 .tz41 .tz-panorama-media{width:calc(100% - 36px);aspect-ratio:16/10}
 .tz46 .tz-blueprint>.wrap,.tz48 .tz-redwood>.wrap{grid-template-columns:minmax(0,1fr)}
 .tz .tz-gallery-main,.tz .tz-gallery-side{aspect-ratio:16/10}
}
@media(max-width:620px){
 .tz>section{padding-block:32px}
 .tz .wrap,.tz section>.wrap{width:calc(100% - 28px)!important}
 .tz41 .tz-panorama-media{width:calc(100% - 28px)}
 .tz .tz-service-grid:has(> :last-child:nth-child(4)){grid-template-columns:minmax(0,1fr)}
 .tz43 .tz-noble-image,.tz50 .tz-waypoint-photo{aspect-ratio:16/10}
 .tz .tz-gallery-side{display:none}
}

/* Phase 4.7K-05: Template 45 specialist image panel only. */
.tz.tz45 .tz-momentum-form{position:relative;isolation:isolate;overflow:hidden;min-height:clamp(360px,35vw,580px);padding:clamp(28px,3.5vw,58px);background:#123c43;color:#fff}
.tz.tz45 .tz-momentum-form-photo{position:absolute;inset:0;z-index:-2;background:linear-gradient(135deg,#164954,#0c2d39)}
.tz.tz45 .tz-momentum-form-photo .tz-image{display:block;width:100%;height:100%;object-fit:cover!important;object-position:center!important;background:transparent}
.tz.tz45 .tz-momentum-form::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,29,39,.92),rgba(7,29,39,.62))}
.tz.tz45 .tz-momentum-form-content{position:relative;z-index:1;max-width:550px}
.tz.tz45 .tz-momentum-form h2{color:#fff!important;-webkit-text-fill-color:#fff!important;text-shadow:0 1px 3px #0005}
.tz.tz45 .tz-momentum-form p{color:#f1f8f9!important;-webkit-text-fill-color:#f1f8f9!important;text-shadow:0 1px 3px #0005}
@media(max-width:900px){.tz.tz45 .tz-momentum-form{min-height:340px}}
@media(max-width:620px){.tz.tz45 .tz-momentum-form{min-height:310px;padding:26px 20px}}
/* Phase 4.12B / Aurelia — all styles scoped to au51 */
.au51{background:#fbf8f3;color:#252420;--au-border:#dcd3c5;--au-cream:#fbf8f3}
.au51 *{box-sizing:border-box}.au51 .wrap{width:min(1200px,calc(100% - 40px));margin-inline:auto}
.au51>section{padding:clamp(64px,8vw,110px) 0}.au51 h1,.au51 h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.04em;line-height:1.08}.au51 h1{font-size:clamp(43px,6vw,86px);max-width:1050px}.au51 h2{font-size:clamp(34px,4.3vw,61px)}.au51 h3{font-size:clamp(19px,2vw,27px);line-height:1.2}.au51 p{line-height:1.75;overflow-wrap:anywhere}.au51 .au-overline{font-size:11px;letter-spacing:.17em;font-weight:800;color:var(--p);display:block;margin-bottom:23px}.au51 .aurelia-image{width:100%;height:100%;object-fit:contain;display:block;background:#eee9e0}
.au51 .au-hero{padding-top:74px}.au51 .au-hero-head{max-width:1050px}.au51 .au-hero-stage{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,.55fr);gap:50px;align-items:end;margin-top:30px}.au51 .au-hero-photo{height:530px;overflow:hidden}.au51 .au-hero-aside{padding:25px 0 35px;border-top:1px solid var(--au-border)}.au51 .au-hero-aside p{font-size:19px}.au51 .au-location{display:block;margin-top:45px;font-size:11px;letter-spacing:.12em}
.au51 .au-intro{background:#f1ede5}.au51 .au-intro>.wrap,.au51 .au-faq>.wrap,.au51 .au-contact>.wrap{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:9%}.au51 .au-benefits{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:36px}.au51 .au-benefits article{border-top:1px solid var(--au-border);padding-top:16px}.au51 .au-benefits h3{font-size:20px}.au51 .au-services{background:#fff}.au51 .au-section-head{max-width:750px;margin-bottom:50px}.au51 .au-service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:55px 28px}.au51 .au-service:nth-child(even){transform:translateY(45px)}.au51 .au-service-media{height:290px;overflow:hidden}.au51 .au-service-info{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid var(--au-border)}.au51 .au-service-info h3{margin:0 0 10px}.au51 .au-service-info p{margin:0}.au51 .au-service-info a{white-space:nowrap;color:var(--p);font-weight:750;font-size:12px}
.au51 .au-process{background:#f7f3ec}.au51 .au-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:42px}.au51 .au-steps article{padding:25px 0;border-top:2px solid var(--p)}.au51 .au-area>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.au51 .au-area-photo{height:460px;overflow:hidden}.au51 .au-faq details{border-bottom:1px solid var(--au-border);padding:19px 0}.au51 .au-faq summary{cursor:pointer;font-weight:700}.au51 .au-cta{text-align:center;background:var(--s);color:#fff}.au51 .au-cta h2,.au51 .au-cta p{color:#fff!important}.au51 .au-cta .actions{justify-content:center}.au51 .au-contact{background:#fff}.au51 .au-map{padding:0 0 40px!important;background:#fff}
@media(max-width:900px){.au51 .au-hero-stage,.au51 .au-intro>.wrap,.au51 .au-faq>.wrap,.au51 .au-contact>.wrap,.au51 .au-area>.wrap{grid-template-columns:1fr;gap:28px}.au51 .au-hero-photo{height:370px}.au51 .au-service-list{gap:35px 18px}.au51 .au-service:nth-child(even){transform:none}.au51 .au-service-info{display:block}.au51 .au-service-info a{display:inline-block;margin-top:15px}.au51 .au-steps{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.au51 .au-service-list,.au51 .au-benefits,.au51 .au-steps{grid-template-columns:1fr}.au51 .au-service-media{height:240px}.au51 .au-hero-photo,.au51 .au-area-photo{height:300px}.au51 .au-hero-aside{padding:12px 0}.au51 .au-location{margin-top:25px}}

/* Batch 52-60: separate composition classes, safely scoped */
.tic.tbn{--tb-bg:#f8fafc;--tb-ink:#172033;--tb-card:#fff;--tb-line:#d7dce2;background:var(--tb-bg);color:var(--tb-ink)}
.tbn *{box-sizing:border-box}.tbn .wrap{width:min(1190px,calc(100% - 44px));margin:auto}.tbn>section{padding:clamp(55px,7vw,100px) 0}.tbn h1,.tbn h2,.tbn h3{line-height:1.12;overflow-wrap:break-word}.tbn h1{font-size:clamp(38px,5vw,72px);letter-spacing:-.045em}.tbn h2{font-size:clamp(30px,3.5vw,52px);letter-spacing:-.035em}.tbn p{line-height:1.65}.tbn .tb-tag{display:block;font-size:11px;letter-spacing:.17em;text-transform:uppercase;font-weight:800;color:var(--p);margin-bottom:17px}.tbn .tb-photo{width:100%;height:100%;object-fit:cover;display:block}.tbn .tb-hero{min-height:570px}.tbn .tb-hero .wrap{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center}.tbn .tb-hero-photo{height:510px;overflow:hidden}.tbn .tb-hero-copy{padding:35px 0}.tbn .tb-hero-copy p{font-size:clamp(17px,1.5vw,21px);max-width:580px}.tbn .actions{display:flex;gap:12px;flex-wrap:wrap}.tbn .tb-services{background:var(--tb-card)}.tbn .tb-section-head{max-width:730px;margin-bottom:40px}.tbn .tb-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.tbn .tb-service{min-width:0;border:1px solid var(--tb-line);background:var(--tb-card);overflow:hidden}.tbn .tb-service-photo{height:215px;overflow:hidden}.tbn .tb-service-body{padding:24px}.tbn .tb-service-body h3{font-size:23px;margin:0 0 10px}.tbn .tb-service-body p{font-size:15px;margin:0 0 20px}.tbn .tb-service-body a{font-weight:800;color:var(--p)}.tbn .tb-why>.wrap,.tbn .tb-area>.wrap,.tbn .tb-faq>.wrap,.tbn .tb-contact>.wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;align-items:start}.tbn .tb-benefits{display:grid;grid-template-columns:1fr 1fr;gap:20px}.tbn .tb-benefits article{padding:22px 0;border-top:1px solid var(--tb-line)}.tbn .tb-benefits h3{margin:0 0 8px}.tbn .tb-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.tbn .tb-process-grid article{padding:25px;border-top:3px solid var(--p);background:var(--tb-card)}.tbn .tb-area-photo{height:420px;overflow:hidden}.tbn .tb-faq details{border-bottom:1px solid var(--tb-line);padding:18px 0}.tbn .tb-faq summary{font-weight:750;cursor:pointer}.tbn .tb-cta{text-align:center;background:var(--s);color:white}.tbn .tb-cta h2,.tbn .tb-cta p{color:white!important}.tbn .tb-cta .actions{justify-content:center}.tbn .tb-contact{background:var(--tb-card)}.tbn .tb-map{padding:0!important}
/* 52: service command */
.tb52{--tb-bg:#eaf0f5;--tb-ink:#10253b;--tb-line:#bac8d5}.tb52 .tb-hero{background:#10253b;color:white}.tb52 .tb-hero h1,.tb52 .tb-hero p{color:white!important}.tb52 .tb-hero .wrap{grid-template-columns:1.1fr .9fr}.tb52 .tb-service-grid{grid-template-columns:1fr 1fr}.tb52 .tb-service{display:grid;grid-template-columns:42% 58%}.tb52 .tb-service-photo{height:100%;min-height:210px}.tb52 .tb-process-grid article{border-top:0;border-left:5px solid var(--a)}
/* 53: gallery minimal */
.tb53{--tb-bg:#fff;--tb-ink:#1e2520;--tb-line:#c7cbc5}.tb53 .tb-hero .wrap{display:flex;flex-direction:column-reverse;align-items:stretch;gap:25px}.tb53 .tb-hero-photo{height:460px;width:100%}.tb53 .tb-hero-copy{display:grid;grid-template-columns:1.2fr 1fr;gap:7%;align-items:end}.tb53 .tb-hero-copy .tb-tag{grid-column:1/-1}.tb53 .tb-hero-copy h1{font-family:Georgia,serif;font-weight:400}.tb53 .tb-service-grid{display:block}.tb53 .tb-service{display:grid;grid-template-columns:90px 1fr;border:0;border-top:1px solid var(--tb-line)}.tb53 .tb-service-photo{display:none}.tb53 .tb-service-body{grid-column:2;display:grid;grid-template-columns:1fr 1.4fr auto;gap:20px;align-items:center;padding:25px 0}.tb53 .tb-service-body p{margin:0}
/* 54: residential */
.tb54{--tb-bg:#fff5ea;--tb-ink:#3d372f;--tb-line:#e3d3c2}.tb54 .tb-hero-photo{border-radius:48% 48% 20px 20px}.tb54 .tb-service{border-radius:20px}.tb54 .tb-service-photo{border-radius:20px 20px 0 0}.tb54 .tb-why{background:#f3e5d5}.tb54 .tb-benefits article{border-radius:16px;background:white;padding:22px}
/* 55: dark cinematic */
.tb55{--tb-bg:#0d121b;--tb-ink:#f5f2e9;--tb-card:#171f2b;--tb-line:#394452}.tb55 h1,.tb55 h2,.tb55 h3,.tb55 p,.tb55 summary{color:#f5f2e9!important}.tb55 .tb-hero{position:relative;min-height:650px}.tb55 .tb-hero .wrap{display:block}.tb55 .tb-hero-photo{position:absolute;inset:0;height:100%;filter:brightness(.32)}.tb55 .tb-hero-copy{position:relative;z-index:1;max-width:750px;padding:130px 0}.tb55 .tb-hero-copy h1{font-family:Georgia,serif}.tb55 .tb-service{border-color:var(--tb-line)}.tb55 .tb-why,.tb55 .tb-contact{background:#111925}
/* 56: response-first */
.tb56{--tb-bg:#f4f7fb;--tb-ink:#15243a;--tb-line:#d6dfe9}.tb56 .tb-hero{background:#fce9dc}.tb56 .tb-hero-copy{order:2}.tb56 .tb-hero-photo{order:1}.tb56 .tb-hero h1{text-transform:uppercase;font-weight:900}.tb56 .tb-service-grid{grid-template-columns:repeat(2,1fr)}.tb56 .tb-service{display:flex;flex-direction:row-reverse}.tb56 .tb-service-photo{width:40%;height:auto;min-height:205px}.tb56 .tb-service-body{flex:1}.tb56 .tb-cta{background:#b93121}
/* 57: creative offset */
.tb57{--tb-bg:#eff1ff;--tb-ink:#161b53;--tb-line:#c4c8f1}.tb57 .tb-hero .wrap{grid-template-columns:1.25fr .75fr}.tb57 .tb-hero-copy{transform:translateX(30px);z-index:1;background:#eff1ff;padding:55px}.tb57 .tb-hero-photo{transform:rotate(3deg)}.tb57 .tb-service:nth-child(2){transform:translateY(38px)}.tb57 .tb-service:nth-child(3){transform:translateY(76px)}.tb57 .tb-services{padding-bottom:150px}
/* 58: nature narrative */
.tb58{--tb-bg:#f1f4e9;--tb-ink:#263d2d;--tb-line:#c8d5c4}.tb58 .tb-hero .wrap{grid-template-columns:.7fr 1.3fr}.tb58 .tb-hero-photo{height:600px;border-radius:220px 220px 0 0}.tb58 .tb-hero h1,.tb58 h2{font-family:Georgia,serif;font-weight:400}.tb58 .tb-service-grid{grid-template-columns:1.3fr 1fr 1fr}.tb58 .tb-service:first-child .tb-service-photo{height:315px}.tb58 .tb-why{background:#e4ecdb}
/* 59: modular technical */
.tb59{--tb-bg:#e9f4f7;--tb-ink:#123344;--tb-line:#bbd2db}.tb59 .tb-hero .wrap{grid-template-columns:1fr 1fr}.tb59 .tb-hero-copy{border-top:6px solid var(--p)}.tb59 .tb-service-grid{grid-template-columns:repeat(2,1fr)}.tb59 .tb-service{display:grid;grid-template-columns:170px 1fr}.tb59 .tb-service-photo{height:100%;min-height:205px}.tb59 .tb-process-grid article{border:1px solid var(--tb-line);border-top:6px solid var(--p)}
/* 60: wide cinematic showcase */
.tb60{--tb-bg:#f8f5f0;--tb-ink:#27231e;--tb-line:#d6ccc0}.tb60 .tb-hero .wrap{display:flex;flex-direction:column;gap:20px}.tb60 .tb-hero-copy{text-align:center;max-width:900px;margin:auto}.tb60 .tb-hero-copy p{margin:0 auto 22px}.tb60 .tb-hero-copy .actions{justify-content:center}.tb60 .tb-hero-photo{width:100%;height:510px}.tb60 .tb-service-grid{grid-template-columns:repeat(2,1fr)}.tb60 .tb-service:first-child{grid-row:span 2}.tb60 .tb-service:first-child .tb-service-photo{height:470px}.tb60 .tb-service-photo{height:230px}.tb60 .tb-why{background:#eae1d7}
@media(max-width:900px){.tbn .tb-hero .wrap,.tb53 .tb-hero-copy,.tbn .tb-why>.wrap,.tbn .tb-area>.wrap,.tbn .tb-faq>.wrap,.tbn .tb-contact>.wrap{display:grid;grid-template-columns:1fr;gap:28px}.tbn .tb-hero{min-height:0}.tbn .tb-hero-photo,.tb58 .tb-hero-photo,.tb60 .tb-hero-photo{height:340px}.tbn .tb-service-grid,.tb52 .tb-service-grid,.tb56 .tb-service-grid,.tb59 .tb-service-grid,.tb60 .tb-service-grid{grid-template-columns:1fr 1fr}.tb53 .tb-service-body{grid-template-columns:1fr}.tb57 .tb-hero-copy,.tb57 .tb-hero-photo,.tb57 .tb-service:nth-child(n){transform:none}.tb57 .tb-services{padding-bottom:70px}.tbn .tb-process-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.tbn .wrap{width:calc(100% - 30px)}.tbn .tb-service-grid,.tb52 .tb-service-grid,.tb56 .tb-service-grid,.tb59 .tb-service-grid,.tb60 .tb-service-grid,.tbn .tb-benefits,.tbn .tb-process-grid{grid-template-columns:1fr}.tb52 .tb-service,.tb56 .tb-service,.tb59 .tb-service{display:block}.tb56 .tb-service-photo{width:100%;height:210px}.tb52 .tb-service-photo,.tb59 .tb-service-photo{height:210px}.tb60 .tb-service:first-child .tb-service-photo{height:230px}.tbn .tb-hero-photo{height:285px}.tbn .tb-hero-copy{padding:20px 0}.tbn .tb-area-photo{height:270px}}

/* Phase 4.12B-02 — screenshot-driven batch 51–60 refinements */
/* The SVG preview graphics contain lettering: never crop that lettering. */
.au51 img.awb-412b-preview-art,.tbn img.awb-412b-preview-art{object-fit:contain!important;object-position:center!important;background:#0b5559}
.au51 .au-hero-photo,.tbn .tb-hero-photo,.au51 .au-service-media,.tbn .tb-service-photo,.au51 .au-area-photo,.tbn .tb-area-photo{min-width:0}
.au51 .au-hero-photo,.tbn .tb-hero-photo{background:#0b5559}
.au51 .au-service-media,.tbn .tb-service-photo,.au51 .au-area-photo,.tbn .tb-area-photo{background:#0b5559}
/* More controlled section spacing and card text rhythm. */
.au51>section,.tbn>section{padding-block:clamp(52px,6vw,86px)}
.au51 h1,.tbn h1{overflow-wrap:normal;word-break:normal;text-wrap:balance}
.au51 h2,.tbn h2{overflow-wrap:normal;text-wrap:balance}
.au51 .au-service-info{flex-wrap:wrap;align-items:start}
.au51 .au-service-info a{white-space:normal}
.au51 .au-service-info p,.tbn .tb-service-body p{overflow-wrap:break-word}
.tbn .tb-service-body{min-width:0}
.tbn .tb-service-body h3{font-size:clamp(19px,1.7vw,23px)}
.tbn .tb-service-body p{font-size:clamp(14px,1.1vw,16px)}
.tbn .tb-service-grid{align-items:stretch}
.tbn .tb-hero-copy,.tbn .tb-hero-photo{min-width:0}
.tbn .tb-process-grid article{min-width:0}
.tbn .tb-process-grid h3{font-size:clamp(18px,1.6vw,22px)}
.tbn .tb-area>.wrap{align-items:center}
.au51 .au-map,.tbn .tb-map{padding:28px 0 45px!important}
.au51 .au-map .wrap,.tbn .tb-map .wrap{max-width:1190px}
/* 52/56/59: keep images and copy in their own balanced panels. */
.tb52 .tb-service,.tb59 .tb-service{grid-template-columns:minmax(0,42%) minmax(0,58%)}
.tb56 .tb-service-photo{flex:0 0 42%}
.tb56 .tb-service-body{flex:1 1 58%}
.tb57 .tb-service:nth-child(2){transform:translateY(18px)}
.tb57 .tb-service:nth-child(3){transform:translateY(36px)}
.tb57 .tb-services{padding-bottom:100px}
/* 55: dark-on-dark throughout, but restore dark text inside light form cards. */
.tbn.tb55{background:#0d121b!important;color:#f5f2e9!important}
.tb55 .tb-services,.tb55 .tb-why,.tb55 .tb-process,.tb55 .tb-area,.tb55 .tb-faq,.tb55 .tb-contact{background:#111925!important;color:#f5f2e9!important}
.tb55 .tb-services h2,.tb55 .tb-services h3,.tb55 .tb-process h2,.tb55 .tb-process h3,.tb55 .tb-area h2,.tb55 .tb-faq h2,.tb55 .tb-faq summary,.tb55 .tb-faq details p,.tb55 .tb-contact h2,.tb55 .tb-contact> .wrap>div:first-child p{color:#f5f2e9!important}
.tb55 .tb-service,.tb55 .tb-process-grid article{background:#1c2837!important;color:#f5f2e9!important;border-color:#3b4a5c!important}
.tb55 .tb-service-body a{color:#76e4dc!important}
.tb55 .tb-hero .tb-hero-photo{z-index:0;opacity:.22}
.tb55 .tb-hero .tb-hero-copy{z-index:2}
.tb55 .tb-hero .tb-hero-copy h1,.tb55 .tb-hero .tb-hero-copy p{color:#fff!important}
.tb55 .tb-tag{color:#70e0d5!important}
.tb55 .tb-faq details,.tb55 .tb-benefits article{border-color:#455467!important}
.tb55 .tb-contact .lead,.tb55 .tb-contact .lead *{color:#162333!important}
.tb55 .tb-contact .lead input,.tb55 .tb-contact .lead textarea,.tb55 .tb-contact .lead select{background:#fff!important;color:#162333!important;border-color:#cdd6df!important}
.tb55 .tb-contact .lead .btn,.tb55 .tb-contact .lead button{color:#fff!important}
.tb55 .tb-map{background:#fff!important;color:#162333!important}
.tb55 .tb-map h2,.tb55 .tb-map h3,.tb55 .tb-map p{color:#162333!important}
/* Avoid image/text collisions in the hero and tighter mobile grids. */
@media(max-width:900px){
 .tb55 .tb-hero .tb-hero-copy{padding:70px 0}
 .tb52 .tb-service,.tb59 .tb-service{grid-template-columns:1fr}
 .tb52 .tb-service-photo,.tb59 .tb-service-photo{height:205px;min-height:0}
 .tb56 .tb-service{display:block}
 .tb56 .tb-service-photo{width:100%;height:205px;min-height:0}
 .tb57 .tb-services{padding-bottom:70px}
 .au51 .au-service-info{display:block}
 .au51 .au-service-info a{display:inline-block;margin-top:12px}
}
@media(max-width:620px){
 .au51>section,.tbn>section{padding-block:48px}
 .au51 .au-hero-photo,.tbn .tb-hero-photo{height:260px}
 .au51 .au-service-media,.tbn .tb-service-photo{height:200px}
 .tb55 .tb-hero .tb-hero-copy{padding:45px 0}
 .tb60 .tb-service:first-child{grid-row:auto}
 .tbn .tb-benefits{gap:10px}
}


/* Phase 4.12B Visual Fix 02 — Template 55 only: contrast and hero isolation. */
.tic.tbn.tb55{color:#f5f7fb!important;background:#101824!important}
.tic.tbn.tb55 .tb-why,.tic.tbn.tb55 .tb-services,.tic.tbn.tb55 .tb-process,.tic.tbn.tb55 .tb-area,.tic.tbn.tb55 .tb-faq,.tic.tbn.tb55 .tb-contact{color:#f5f7fb!important;background:#111925!important}
.tic.tbn.tb55 .tb-why h2,.tic.tbn.tb55 .tb-why h3,.tic.tbn.tb55 .tb-why p,
.tic.tbn.tb55 .tb-benefits h3,.tic.tbn.tb55 .tb-benefits p,
.tic.tbn.tb55 .tb-services h2,.tic.tbn.tb55 .tb-service-body h3,.tic.tbn.tb55 .tb-service-body p,
.tic.tbn.tb55 .tb-process h2,.tic.tbn.tb55 .tb-process-grid h3,.tic.tbn.tb55 .tb-process-grid p,
.tic.tbn.tb55 .tb-area h2,.tic.tbn.tb55 .tb-area p,
.tic.tbn.tb55 .tb-faq h2,.tic.tbn.tb55 .tb-faq summary,.tic.tbn.tb55 .tb-faq details p,
.tic.tbn.tb55 .tb-contact h2,.tic.tbn.tb55 .tb-contact .wrap>div:first-child p{color:#f5f7fb!important;opacity:1!important}
.tic.tbn.tb55 .tb-service-body,.tic.tbn.tb55 .tb-process-grid article{background:#1c2939!important;color:#f5f7fb!important}
.tic.tbn.tb55 .tb-service-body a{color:#7ee7df!important}
.tic.tbn.tb55 .tb-benefits article{min-height:95px;border-top:1px solid #405063!important}
.tic.tbn.tb55 .tb-benefits article h3{margin-bottom:8px}
.tic.tbn.tb55 .tb-hero{background:#0b141d!important;isolation:isolate;overflow:hidden}
.tic.tbn.tb55 .tb-hero .wrap{position:relative;min-height:530px;display:flex;align-items:center}
.tic.tbn.tb55 .tb-hero .tb-hero-photo{position:absolute!important;left:auto!important;right:0!important;top:0!important;bottom:0!important;width:48%!important;height:100%!important;opacity:.16!important;filter:brightness(.6)!important;z-index:0!important;pointer-events:none;overflow:hidden}
.tic.tbn.tb55 .tb-hero .tb-hero-photo:before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#0b141d 0%,transparent 75%)}
.tic.tbn.tb55 .tb-hero .tb-hero-copy{position:relative!important;z-index:2!important;max-width:650px!important;width:70%;padding:85px 0!important}
.tic.tbn.tb55 .tb-hero h1,.tic.tbn.tb55 .tb-hero p{color:#fff!important;text-shadow:none!important}
.tic.tbn.tb55 .tb-tag{color:#70e0d5!important}
/* The embedded lead card is intentionally light, unlike the surrounding dark section. */
.tic.tbn.tb55 .tb-contact .lead,.tic.tbn.tb55 .tb-contact .lead h1,.tic.tbn.tb55 .tb-contact .lead h2,.tic.tbn.tb55 .tb-contact .lead h3,.tic.tbn.tb55 .tb-contact .lead p,.tic.tbn.tb55 .tb-contact .lead label{color:#172334!important}
.tic.tbn.tb55 .tb-contact .lead .btn,.tic.tbn.tb55 .tb-contact .lead button{color:#fff!important}
@media(max-width:900px){
 .tic.tbn.tb55 .tb-hero .wrap{min-height:420px}
 .tic.tbn.tb55 .tb-hero .tb-hero-copy{width:100%;max-width:620px;padding:70px 0!important}
 .tic.tbn.tb55 .tb-hero .tb-hero-photo{width:65%!important;opacity:.09!important}
}
@media(max-width:600px){.tic.tbn.tb55 .tb-hero .wrap{min-height:0}.tic.tbn.tb55 .tb-hero .tb-hero-copy{padding:55px 0!important}.tic.tbn.tb55 .tb-hero .tb-hero-photo{width:100%!important;opacity:.06!important}}


/* Phase 4.12B-03: batch-wide preview readability and layout stabilization. */
.au51,.tbn{--batch-body:#243044}
.au51 .au-hero-photo,.au51 .au-service-media,.au51 .au-area-photo,
.tbn .tb-hero-photo,.tbn .tb-service-photo,.tbn .tb-area-photo{position:relative;isolation:isolate}
/* Preview artwork is a complete designed graphic. Keep it uncropped; photographs still use cover. */
.au51 img.awb-412b-preview-art,.tbn img.awb-412b-preview-art{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important}
.au51 .au-service-info,.tbn .tb-service-body{min-width:0}
.au51 .au-service-info p,.tbn .tb-service-body p{line-height:1.6}
.au51 .au-service-info h3,.tbn .tb-service-body h3{line-height:1.24}
.au51 .au-service-list,.tbn .tb-service-grid{align-items:stretch}
.au51 .au-steps article,.tbn .tb-process-grid article{min-height:135px}
.au51 .au-map,.tbn .tb-map{padding:30px 0 44px!important}
.au51 .au-map>.wrap,.tbn .tb-map>.wrap{width:min(1190px,calc(100% - 44px));margin:auto}
.au51 .au-map .map-card,.tbn .tb-map .map-card{max-width:100%;overflow:hidden}
/* Template 51: avoid stagger-induced white gaps and overly wide copy/link columns. */
.au51 .au-service:nth-child(even){transform:none!important}
.au51 .au-service-info{display:block}
.au51 .au-service-info a{display:inline-block;margin-top:12px}
.au51 .au-service-list{gap:32px 24px}
/* Template 52: predictable image/content balance. */
.tb52 .tb-service{grid-template-columns:minmax(0,40%) minmax(0,60%)}
.tb52 .tb-service-body{padding:20px}
/* Template 53: preserve intentional minimal index, avoid excessive empty media spacing. */
.tb53 .tb-services .tb-service-body{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto}
.tb53 .tb-service-body a{white-space:nowrap}
/* Template 54: coherent residential card heights. */
.tb54 .tb-service-body{min-height:155px}
/* Template 55: eliminate lettered preview art from hero (it duplicates the actual headline).
   Keep photo imagery in other sections. On real sites hero artwork may be enabled after review. */
.tic.tbn.tb55 .tb-hero{background:#0b141d!important;min-height:0!important}
.tic.tbn.tb55 .tb-hero .wrap{min-height:0!important;display:block!important}
.tic.tbn.tb55 .tb-hero .tb-hero-photo{display:none!important}
.tic.tbn.tb55 .tb-hero .tb-hero-copy{width:100%!important;max-width:850px!important;padding:76px 0 82px!important}
.tic.tbn.tb55 .tb-hero h1{max-width:750px!important}
.tic.tbn.tb55 .tb-why,.tic.tbn.tb55 .tb-services,.tic.tbn.tb55 .tb-process,.tic.tbn.tb55 .tb-area,.tic.tbn.tb55 .tb-faq,.tic.tbn.tb55 .tb-contact{background:#111925!important;color:#f5f7fb!important}
.tic.tbn.tb55 .tb-benefits h3,.tic.tbn.tb55 .tb-benefits p,
.tic.tbn.tb55 .tb-service-body h3,.tic.tbn.tb55 .tb-service-body p,
.tic.tbn.tb55 .tb-process-grid h3,.tic.tbn.tb55 .tb-process-grid p{color:#f5f7fb!important;opacity:1!important}
.tic.tbn.tb55 .tb-service,.tic.tbn.tb55 .tb-process-grid article{background:#1c2939!important;border-color:#405063!important}
.tic.tbn.tb55 .tb-service-body{background:#1c2939!important}
.tic.tbn.tb55 .tb-benefits article{border-color:#405063!important}
.tic.tbn.tb55 .tb-contact .lead{background:#fff!important;color:#172334!important}
.tic.tbn.tb55 .tb-contact .lead p,.tic.tbn.tb55 .tb-contact .lead label,.tic.tbn.tb55 .tb-contact .lead h3{color:#172334!important}
.tic.tbn.tb55 .tb-contact .lead .btn,.tic.tbn.tb55 .tb-contact .lead button{color:#fff!important}
/* Template 56: emergency cards remain legible and consistently aligned. */
.tb56 .tb-service{align-items:stretch}
.tb56 .tb-service-photo{flex:0 0 40%}
.tb56 .tb-service-body{flex:1;min-width:0}
/* Template 57: remove large empty stagger gaps. */
.tb57 .tb-service:nth-child(n){transform:none!important}
.tb57 .tb-services{padding-bottom:clamp(52px,6vw,86px)!important}
.tb57 .tb-hero-copy{transform:none!important}
/* Template 58: service grid must not leave an isolated oversized first card. */
.tb58 .tb-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.tb58 .tb-service:first-child .tb-service-photo{height:215px}
/* Template 59: balanced technical service rows. */
.tb59 .tb-service{grid-template-columns:minmax(0,40%) minmax(0,60%)}
/* Template 60: keep showcase layout but remove unintended double-height service card. */
.tb60 .tb-service:first-child{grid-row:auto!important}
.tb60 .tb-service:first-child .tb-service-photo{height:230px}
@media(max-width:900px){
 .tb53 .tb-services .tb-service-body{grid-template-columns:1fr;gap:12px}
 .tb53 .tb-service-body a{white-space:normal}
 .tb52 .tb-service,.tb59 .tb-service{grid-template-columns:1fr}
 .tb58 .tb-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tic.tbn.tb55 .tb-hero .tb-hero-copy{padding:58px 0!important}
}
@media(max-width:620px){
 .tb58 .tb-service-grid{grid-template-columns:1fr}
 .tb56 .tb-service{display:block}
 .tb56 .tb-service-photo{width:100%;height:210px}
 .au51 .au-map>.wrap,.tbn .tb-map>.wrap{width:calc(100% - 30px)}
 .tic.tbn.tb55 .tb-hero .tb-hero-copy{padding:44px 0!important}
}


/* Phase 4.12B-04 — final visual polish, scoped exclusively to 51–60.
   Keep preview SVGs intact; photographic assets retain their existing cover behavior. */
.au51 .au-section-head,.tbn .tb-section-head{margin-bottom:clamp(26px,3.5vw,42px)}
.au51 .au-service-list,.tbn .tb-service-grid{align-items:stretch}
.au51 .au-service,.tbn .tb-service{min-width:0}
.au51 .au-service-info h3,.tbn .tb-service-body h3{overflow-wrap:anywhere}
.au51 .au-service-info p,.tbn .tb-service-body p{max-width:65ch}
.au51 .au-hero-stage,.tbn .tb-hero .wrap{min-width:0}
.au51 .au-hero-photo,.tbn .tb-hero-photo{max-width:100%}
/* Use balanced pairs when a three-column design has exactly four service cards. */
.tb54 .tb-service-grid:has(> .tb-service:nth-child(4):last-child),
.tb55 .tb-service-grid:has(> .tb-service:nth-child(4):last-child),
.tb57 .tb-service-grid:has(> .tb-service:nth-child(4):last-child),
.tb58 .tb-service-grid:has(> .tb-service:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
/* Preserve each template's own image framing, while eliminating uneven card heights. */
.tb54 .tb-service-body,.tb55 .tb-service-body,.tb57 .tb-service-body,.tb58 .tb-service-body{display:flex;flex-direction:column}
.tb54 .tb-service-body a,.tb55 .tb-service-body a,.tb57 .tb-service-body a,.tb58 .tb-service-body a{margin-top:auto;align-self:flex-start}
.tb54 .tb-service-body p,.tb55 .tb-service-body p,.tb57 .tb-service-body p,.tb58 .tb-service-body p{margin-bottom:16px}
/* Narrow the overly generous section rhythm without flattening distinct compositions. */
.au51>section,.tbn>section{padding-block:clamp(48px,5.5vw,78px)}
.au51 .au-process,.tbn .tb-process{padding-block:clamp(46px,5vw,70px)}
.au51 .au-steps,.tbn .tb-process-grid{margin-top:clamp(22px,3vw,34px)}
.tbn .tb-benefits article{padding-block:17px}
/* The map belongs to the contact/footer sequence, not a detached full-width slab. */
.au51 .au-contact,.tbn .tb-contact{padding-bottom:clamp(24px,3vw,42px)}
.au51 .au-map,.tbn .tb-map{padding:12px 0 clamp(28px,4vw,48px)!important}
.au51 .au-map{background:#fff}
.tbn .tb-map{background:var(--tb-card)}
.tbn .tb-map>.wrap{width:min(1190px,calc(100% - 44px));margin-inline:auto}
.tbn .tb-map> :not(.wrap){width:min(1190px,calc(100% - 44px));margin-inline:auto}
.au51 .au-map iframe,.tbn .tb-map iframe{max-width:100%}
/* Pureline 53: image-led portfolio retains the minimalist service index. */
.tb53 .tb53-gallery{padding:clamp(40px,5vw,72px) 0;background:#f4f6f5}
.tb53 .tb53-gallery-heading{margin-bottom:24px}
.tb53 .tb53-gallery-heading h2{font-family:Georgia,serif;font-weight:400}
.tb53 .tb53-gallery-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:18px}
.tb53 .tb53-gallery-item{margin:0;min-width:0}
.tb53 .tb53-gallery-photo{height:clamp(180px,23vw,290px);overflow:hidden;background:#e3eeec}
.tb53 .tb53-gallery-photo img{display:block;width:100%;height:100%;object-fit:cover}
.tb53 .tb53-gallery-photo img.awb-412b-preview-art{object-fit:contain}
.tb53 .tb53-gallery-item figcaption{font-weight:700;font-size:14px;padding-top:12px}
/* Full-bleed map sections on all ten templates; text remains in a readable content column. */
.tic.au51 .au-map,.tic.tbn .tb-map{width:100%;max-width:none;overflow:hidden}
.tic.au51 .au-map>.wrap,.tic.tbn .tb-map>.wrap,
.tic.tbn .tb-map> :not(.wrap){width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}
.tic.au51 .au-map .map-card,.tic.tbn .tb-map .map-card,
.tic.au51 .au-map iframe,.tic.tbn .tb-map iframe{width:100%!important;max-width:none!important}
.tic.au51 .au-map iframe,.tic.tbn .tb-map iframe{display:block;min-height:300px}
@media(max-width:700px){
 .tb53 .tb53-gallery-grid{grid-template-columns:1fr 1fr}
 .tb53 .tb53-gallery-item:first-child{grid-column:1/-1}
 .tb53 .tb53-gallery-photo{height:210px}
 .tic.au51 .au-map iframe,.tic.tbn .tb-map iframe{min-height:240px}
}
@media(max-width:440px){.tb53 .tb53-gallery-grid{grid-template-columns:1fr}}
/* Template 55 keeps its intentionally text-led hero and light map/lead contrast. */
.tic.tbn.tb55 .tb-map{background:#fff!important;color:#162333!important}
.tic.tbn.tb55 .tb-map h2,.tic.tbn.tb55 .tb-map h3,.tic.tbn.tb55 .tb-map p{color:#162333!important}
/* Template 57: retain its offset identity without wasting vertical space. */
.tb57 .tb-services{padding-bottom:clamp(48px,5.5vw,78px)!important}
/* Template 60: avoid disproportionate hero artwork on desktop. */
.tb60 .tb-hero-photo{height:clamp(340px,37vw,470px)}
@media(max-width:900px){
 .tb54 .tb-service-grid:has(> .tb-service:nth-child(4):last-child),
 .tb55 .tb-service-grid:has(> .tb-service:nth-child(4):last-child),
 .tb57 .tb-service-grid:has(> .tb-service:nth-child(4):last-child),
 .tb58 .tb-service-grid:has(> .tb-service:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
 .tb60 .tb-hero-photo{height:340px}
}
@media(max-width:620px){
 .tb54 .tb-service-grid:has(> .tb-service:nth-child(4):last-child),
 .tb55 .tb-service-grid:has(> .tb-service:nth-child(4):last-child),
 .tb57 .tb-service-grid:has(> .tb-service:nth-child(4):last-child),
 .tb58 .tb-service-grid:has(> .tb-service:nth-child(4):last-child){grid-template-columns:1fr}
 .au51>section,.tbn>section{padding-block:44px}
 .au51 .au-map,.tbn .tb-map{padding:10px 0 30px!important}
 .tbn .tb-map> :not(.wrap){width:calc(100% - 30px)}
 .tb60 .tb-hero-photo{height:270px}
}

/* Phase 4.12B-06: responsive full-width content for Templates 51–60 only.
   Full-bleed section backgrounds and maps; adaptive gutters and readable text. */
.tic.au51,.tic.tbn{width:100%;max-width:none;min-width:0;overflow-x:clip}
.tic.au51>section,.tic.tbn>section{width:100%;max-width:none}
.tic.au51>section:not(.au-map)>.wrap,
.tic.tbn>section:not(.tb-map)>.wrap{
 width:calc(100% - 2 * clamp(18px,3.5vw,76px));
 max-width:none;
 margin-inline:auto;
}
.tic.au51 .au-hero-stage,.tic.tbn .tb-hero .wrap,
.tic.au51 .au-service-list,.tic.tbn .tb-service-grid,
.tic.au51 .au-steps,.tic.tbn .tb-process-grid{min-width:0}
.tic.au51 .au-hero-stage>*,.tic.tbn .tb-hero .wrap>*,
.tic.au51 .au-service-list>*,.tic.tbn .tb-service-grid>*{min-width:0}
.tic.au51 img,.tic.tbn img{max-width:100%}
.tic.au51 .au-map,.tic.tbn .tb-map{width:100%;max-width:none}
@media(min-width:1700px){
 .tic.au51 .au-service-list,.tic.tbn .tb-service-grid{column-gap:clamp(22px,2vw,44px)}
 .tic.au51 .au-hero-stage,.tic.tbn .tb-hero .wrap{column-gap:clamp(30px,4vw,90px)}
}
@media(max-width:900px){
 .tic.au51>section:not(.au-map)>.wrap,.tic.tbn>section:not(.tb-map)>.wrap{width:calc(100% - 40px)}
}
@media(max-width:620px){
 .tic.au51>section:not(.au-map)>.wrap,.tic.tbn>section:not(.tb-map)>.wrap{width:calc(100% - 30px)}
}.tc{--tc-bg:#f7f8f8;--tc-ink:#1b2631;--tc-paper:#fff;--tc-line:#d6dfe1;background:var(--tc-bg);color:var(--tc-ink)}
.tc *{box-sizing:border-box}.tc .tc-wrap{width:calc(100% - clamp(30px,7vw,140px));max-width:1800px;margin-inline:auto}.tc>section:not(.tc-map){padding:clamp(58px,6vw,105px) 0}.tc h1,.tc h2,.tc h3{line-height:1.13;overflow-wrap:break-word}.tc h1{font-size:clamp(38px,5.2vw,88px);letter-spacing:-.045em;max-width:1050px}.tc h2{font-size:clamp(30px,3.5vw,58px);letter-spacing:-.03em}.tc h3{font-size:clamp(19px,1.6vw,25px)}.tc p{line-height:1.7}.tc .tc-tag{display:block;font-size:11px;font-weight:800;letter-spacing:.17em;color:var(--p);margin-bottom:17px}.tc .tc-photo{width:100%;height:100%;object-fit:cover;display:block}.tc .tc-photo.awb-412b-preview-art{object-fit:contain;background:#0b5559}.tc .tc-hero .tc-wrap,.tc .tc-area .tc-wrap{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(28px,5vw,95px)}.tc .tc-hero-copy p{font-size:clamp(16px,1.4vw,21px);max-width:640px}.tc .tc-hero-media{height:clamp(330px,37vw,660px);overflow:hidden;background:#0b5559}.tc .tc-area-media{height:clamp(300px,30vw,490px);overflow:hidden;background:#0b5559}.tc .tc-services{background:var(--tc-paper)}.tc .tc-heading{max-width:780px;margin-bottom:35px}.tc .tc-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2vw,32px)}.tc .tc-service{min-width:0;background:var(--tc-paper);border:1px solid var(--tc-line);overflow:hidden}.tc .tc-service-media{height:clamp(190px,21vw,330px);background:#0b5559;overflow:hidden}.tc .tc-service-copy{padding:clamp(18px,2vw,30px)}.tc .tc-service-copy h3{margin:0 0 10px}.tc .tc-service-copy p{margin:0 0 16px}.tc .tc-service-copy a{color:var(--p);font-weight:750}.tc .tc-why .tc-wrap,.tc .tc-faq .tc-wrap,.tc .tc-contact .tc-wrap{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(30px,6vw,100px)}.tc .tc-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.tc .tc-benefits article{padding:20px 0;border-top:1px solid var(--tc-line)}.tc .tc-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:32px}.tc .tc-process-grid article{background:var(--tc-paper);border-top:3px solid var(--p);padding:24px}.tc .tc-faq details{padding:18px 0;border-bottom:1px solid var(--tc-line)}.tc .tc-faq summary{cursor:pointer;font-weight:750}.tc .tc-cta{text-align:center;background:var(--s);color:white}.tc .tc-cta h2,.tc .tc-cta p{color:white!important}.tc .tc-cta .actions{justify-content:center}.tc .tc-contact{background:var(--tc-paper)}.tc .tc-map{width:100%;max-width:none;padding:0!important}.tc .tc-map>.wrap,.tc .tc-map .demo-map,.tc .tc-map .demo-map-art{width:100%!important;max-width:none!important}.tc .tc-map .demo-map-art{min-height:300px}.tc .tc-area{background:var(--tc-bg)}
/* 61 — sunlit editorial */
.tc61{--tc-bg:#faf6ed;--tc-ink:#30291f;--tc-line:#ddd0bc}.tc61 h1,.tc61 h2{font-family:Georgia,serif;font-weight:400}.tc61 .tc-hero-media{border-radius:50% 50% 0 0}.tc61 .tc-why{background:#f0e8d8}.tc61 .tc-service:nth-child(even){transform:translateY(24px)}
/* 62 — structural contractor */
.tc62{--tc-bg:#e9eef3;--tc-ink:#142b40;--tc-line:#b7c8d7}.tc62 .tc-hero{background:#142b40;color:#fff}.tc62 .tc-hero h1,.tc62 .tc-hero p{color:#fff!important}.tc62 .tc-service{display:grid;grid-template-columns:42% 58%}.tc62 .tc-service-media{height:100%;min-height:235px}.tc62 .tc-process-grid article{border-top:0;border-left:5px solid var(--p)}
/* 63 — lakeside */
.tc63{--tc-bg:#eef5f4;--tc-ink:#1c3b40;--tc-line:#c9dbd8}.tc63 h1,.tc63 h2{font-family:Georgia,serif;font-weight:400}.tc63 .tc-hero-media{border-radius:18px 160px 18px 18px}.tc63 .tc-service{border-radius:18px}.tc63 .tc-why{background:#e0ece8}
/* 64 — prism */
.tc64{--tc-bg:#f1f0ff;--tc-ink:#27244e;--tc-line:#c9c3e9}.tc64 .tc-hero-copy{background:#e3ddff;padding:clamp(24px,4vw,65px)}.tc64 .tc-hero-media{clip-path:polygon(12% 0,100% 0,100% 85%,88% 100%,0 100%,0 15%)}.tc64 .tc-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tc64 .tc-service:first-child{grid-column:span 2}.tc64 .tc-service:first-child .tc-service-media{height:340px}
/* 65 — nocturne */
.tc65{--tc-bg:#0e1720;--tc-ink:#f5f2eb;--tc-paper:#1a2732;--tc-line:#3c4a55}.tc65 h1,.tc65 h2,.tc65 h3,.tc65 p,.tc65 summary{color:#f5f2eb}.tc65 .tc-hero{background:#101c27}.tc65 .tc-hero-media{border:12px solid #2b3b45}.tc65 .tc-service-copy a{color:#87ded1}.tc65 .tc-tag{color:#83e0d1}.tc65 .tc-contact .lead,.tc65 .tc-contact .lead *{color:#1b2631}.tc65 .tc-contact .lead{background:#fff}.tc65 .tc-cta{background:#183746}
/* 66 — civic bulletin */
.tc66{--tc-bg:#f6f7f4;--tc-ink:#24322a;--tc-line:#d3dbd3}.tc66 .tc-hero{border-bottom:8px solid var(--p)}.tc66 .tc-service{display:grid;grid-template-columns:32% 68%}.tc66 .tc-service-media{height:100%;min-height:200px}.tc66 .tc-benefits article{border:1px solid var(--tc-line);padding:20px;background:white}
/* 67 — arbor */
.tc67{--tc-bg:#f0f4e9;--tc-ink:#2d422d;--tc-line:#c7d7bc}.tc67 h1,.tc67 h2{font-family:Georgia,serif;font-weight:400}.tc67 .tc-hero-media{border-radius:230px 230px 20px 20px}.tc67 .tc-service-media{border-radius:24px 24px 0 0}.tc67 .tc-service{border-radius:24px}.tc67 .tc-why{background:#e3ecd9}
/* 68 — pulse */
.tc68{--tc-bg:#f4f7fb;--tc-ink:#172e44;--tc-line:#c9d7e6}.tc68 .tc-hero{background:#e4eef9}.tc68 .tc-hero-copy h1{text-transform:uppercase;font-weight:900}.tc68 .tc-service{display:grid;grid-template-columns:1fr 1fr}.tc68 .tc-service-media{height:100%;min-height:230px}.tc68 .tc-cta{background:#b63227}.tc68 .tc-process-grid article{border-left:5px solid var(--p);border-top:0}
/* 69 — monument */
.tc69{--tc-bg:#f3f0e9;--tc-ink:#252522;--tc-line:#ccc6b9}.tc69 .tc-hero .tc-wrap{display:flex;flex-direction:column-reverse;align-items:stretch}.tc69 .tc-hero-media{height:clamp(320px,35vw,560px)}.tc69 .tc-hero-copy{display:grid;grid-template-columns:1.2fr .8fr;gap:25px}.tc69 .tc-hero-copy .tc-tag{grid-column:1/-1}.tc69 .tc-hero-copy h1{font-family:Georgia,serif;font-weight:400}.tc69 .tc-service-grid{display:block}.tc69 .tc-service{display:grid;grid-template-columns:1fr 1.5fr;border:0;border-top:1px solid var(--tc-line)}.tc69 .tc-service-media{height:160px}.tc69 .tc-service-copy{display:grid;grid-template-columns:1fr 1.5fr auto;align-items:center;gap:20px}
/* 70 — panoramic horizon */
.tc70{--tc-bg:#f8f6f1;--tc-ink:#24353b;--tc-line:#d0d9d7}.tc70 .tc-hero .tc-wrap{display:flex;flex-direction:column-reverse;align-items:stretch}.tc70 .tc-hero-media{height:clamp(330px,43vw,720px)}.tc70 .tc-hero-copy{text-align:center}.tc70 .tc-hero-copy h1,.tc70 .tc-hero-copy p{margin-left:auto;margin-right:auto}.tc70 .tc-hero-copy .actions{justify-content:center}.tc70 .tc-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tc70 .tc-service:first-child{grid-column:span 2}.tc70 .tc-service:first-child .tc-service-media{height:390px}
@media(max-width:1000px){.tc .tc-hero .tc-wrap,.tc .tc-area .tc-wrap,.tc .tc-why .tc-wrap,.tc .tc-faq .tc-wrap,.tc .tc-contact .tc-wrap,.tc69 .tc-hero-copy{grid-template-columns:1fr;gap:28px}.tc .tc-service-grid,.tc64 .tc-service-grid,.tc70 .tc-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tc64 .tc-service:first-child,.tc70 .tc-service:first-child{grid-column:auto}.tc .tc-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tc61 .tc-service:nth-child(even){transform:none}.tc69 .tc-service-copy{grid-template-columns:1fr}.tc69 .tc-hero-copy .tc-tag{grid-column:auto}}
@media(max-width:650px){.tc .tc-wrap{width:calc(100% - 30px)}.tc .tc-service-grid,.tc64 .tc-service-grid,.tc70 .tc-service-grid,.tc .tc-benefits,.tc .tc-process-grid{grid-template-columns:1fr}.tc62 .tc-service,.tc66 .tc-service,.tc68 .tc-service,.tc69 .tc-service{display:block}.tc .tc-service-media,.tc62 .tc-service-media,.tc66 .tc-service-media,.tc68 .tc-service-media,.tc69 .tc-service-media{height:225px;min-height:0}.tc .tc-hero-media{height:310px}.tc .tc-area-media{height:260px}.tc65 .tc-contact .lead{max-width:100%}}

/* Phase 4.12C-03: architecture variants, all scoped to 61–70. */
.tc{overflow:hidden}.tc .tc-wrap{max-width:none;width:calc(100% - clamp(32px,6vw,130px))}.tc .tc-media-caption{position:absolute;bottom:18px;left:20px;z-index:2;background:rgba(0,0,0,.68);color:#fff;padding:8px 13px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tc .tc-hero-media,.tc .tc-area-media,.tc .tc-service-media,.tc .tc-story-media,.tc .tc-story-aside{position:relative}.tc .tc-service-number,.tc .tc-benefit-number,.tc .tc-step-number{font-size:12px;font-weight:850;letter-spacing:.12em;color:var(--p)}.tc .tc-service-number{display:block;padding:15px 20px 0}.tc .tc-benefit-number,.tc .tc-step-number{display:block;margin-bottom:13px}.tc .tc-story{background:var(--tc-paper)}.tc .tc-story .tc-wrap{display:grid;grid-template-columns:1.15fr .8fr .45fr;align-items:center;gap:clamp(20px,3vw,60px)}.tc .tc-story-media{height:clamp(330px,40vw,680px);overflow:hidden}.tc .tc-story-aside{height:clamp(230px,25vw,400px);overflow:hidden;align-self:end}.tc .tc-story-copy h2{max-width:630px}.tc .tc-story-copy p{max-width:580px}.tc .tc-hero .tc-wrap{min-height:500px}.tc .tc-hero-copy{position:relative;z-index:2}.tc .tc-map,.tc .tc-map>.wrap,.tc .tc-map iframe,.tc .tc-map .map-card{width:100%!important;max-width:none!important}.tc .tc-map iframe{min-height:350px}.tc .tc-map .demo-map-art{min-height:320px}.tc .tc-contact .tc-wrap{align-items:start}
/* 61 SOLSTICE — editorial image-first split with vertical feature story and staggered services */
.tc61 .tc-hero{background:#f8f1e3}.tc61 .tc-hero .tc-wrap{grid-template-columns:.8fr 1.2fr;gap:0;min-height:680px}.tc61 .tc-hero-copy{padding:65px 8% 65px 0}.tc61 .tc-hero-media{height:clamp(570px,52vw,820px);border-radius:48% 48% 0 0}.tc61 .tc-hero h1{font-size:clamp(52px,6.5vw,110px);line-height:.99}.tc61 .tc-services .tc-heading{margin-bottom:55px}.tc61 .tc-service-grid{grid-template-columns:1.3fr .7fr;align-items:start;gap:40px}.tc61 .tc-service:nth-child(even){margin-top:95px;transform:none}.tc61 .tc-service:nth-child(odd){margin-top:0}.tc61 .tc-service{border:0;border-bottom:1px solid #c9bda9;background:transparent}.tc61 .tc-service-media{height:clamp(230px,27vw,480px)}.tc61 .tc-service-copy{padding:22px 0 30px}.tc61 .tc-story .tc-wrap{grid-template-columns:1fr 1fr}.tc61 .tc-story-aside{display:none}.tc61 .tc-story-media{height:620px}.tc61 .tc-why .tc-wrap{grid-template-columns:1fr 1fr}
/* 62 TITAN — full-bleed industrial hero, numbered full-width service bands */
.tc62 .tc-hero{position:relative;min-height:660px;background:#101e2b}.tc62 .tc-hero .tc-wrap{min-height:660px;grid-template-columns:1fr;display:flex;align-items:center}.tc62 .tc-hero-copy{width:min(720px,65%);padding:90px 0}.tc62 .tc-hero-media{position:absolute;inset:0 0 0 47%;height:100%;opacity:.55;border-left:12px solid #e9b34a}.tc62 .tc-hero h1{font-size:clamp(52px,6.4vw,115px);text-transform:uppercase;line-height:.96}.tc62 .tc-services{background:#e6ebee}.tc62 .tc-services .tc-heading{max-width:none;display:flex;justify-content:space-between;align-items:end;gap:20px}.tc62 .tc-service-grid{grid-template-columns:1fr;gap:0}.tc62 .tc-service{grid-template-columns:90px 32% 1fr;border:0;border-top:1px solid #a8bac8;background:transparent;min-height:250px}.tc62 .tc-service-number{font-size:28px;padding:32px 10px}.tc62 .tc-service-media{height:250px;min-height:0}.tc62 .tc-service-copy{padding:40px}.tc62 .tc-process{background:#172b3b;color:#fff}.tc62 .tc-process h2,.tc62 .tc-process h3,.tc62 .tc-process p{color:#fff}.tc62 .tc-process-grid article{background:#253f50}
/* 63 LAKESHORE — panoramic cover and alternating magazine content */
.tc63 .tc-hero .tc-wrap{display:flex;flex-direction:column-reverse;gap:0;align-items:stretch;min-height:0}.tc63 .tc-hero-media{width:100%;height:clamp(420px,52vw,790px);border-radius:0}.tc63 .tc-hero-copy{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:30px;padding:60px 2%}.tc63 .tc-hero-copy .tc-tag{grid-column:1/-1}.tc63 .tc-hero h1{font-size:clamp(45px,5vw,82px)}.tc63 .tc-hero-copy .actions{grid-column:2}.tc63 .tc-story{background:#e4efec}.tc63 .tc-story .tc-wrap{grid-template-columns:1.1fr 1fr}.tc63 .tc-story-aside{display:none}.tc63 .tc-story-media{border-radius:200px 200px 12px 12px}.tc63 .tc-service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.tc63 .tc-service-media{height:clamp(180px,20vw,330px)}.tc63 .tc-service{border-radius:12px 12px 0 0}.tc63 .tc-service-copy{padding:20px}.tc63 .tc-area .tc-wrap{grid-template-columns:.75fr 1.25fr}
/* 64 PRISM — asymmetrical offset hero, colorful masonry, overlaid story */
.tc64 .tc-hero{background:#ece9ff}.tc64 .tc-hero .tc-wrap{grid-template-columns:1.15fr .85fr;gap:0;min-height:650px}.tc64 .tc-hero-copy{padding:clamp(40px,6vw,110px);margin:50px -90px 50px 0;background:#d8d0ff;box-shadow:18px 18px 0 #c1b5fa}.tc64 .tc-hero-media{height:600px;clip-path:polygon(17% 0,100% 0,100% 84%,83% 100%,0 100%,0 17%)}.tc64 .tc-service-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:18px;align-items:stretch}.tc64 .tc-service{grid-column:span 2;border:0;background:#fff}.tc64 .tc-service:first-child{grid-column:span 4;grid-row:span 2}.tc64 .tc-service:nth-child(4){grid-column:span 3}.tc64 .tc-service:nth-child(5){grid-column:span 3}.tc64 .tc-service:first-child .tc-service-media{height:clamp(400px,43vw,660px)}.tc64 .tc-service:not(:first-child) .tc-service-media{height:clamp(180px,19vw,270px)}.tc64 .tc-story{background:#332e65;color:#fff}.tc64 .tc-story h2,.tc64 .tc-story p{color:#fff}.tc64 .tc-story .tc-wrap{grid-template-columns:.8fr 1.2fr}.tc64 .tc-story-aside{display:none}.tc64 .tc-story-media{order:2}.tc64 .tc-story-copy{order:1}
/* 65 NOCTURNE — accessible luxury dark; explicit text contrast in every content zone */
.tc65{--tc-bg:#0d1720;--tc-paper:#172631;--tc-line:#526471;--tc-ink:#f5f7f8}.tc65 .tc-hero{background:#07131d}.tc65 .tc-hero .tc-wrap{grid-template-columns:1.1fr .9fr;min-height:680px}.tc65 .tc-hero h1{font-size:clamp(50px,6vw,105px)}.tc65 .tc-hero-media{height:clamp(450px,42vw,700px);border:1px solid #5b6d78;box-shadow:25px 25px 0 #233746}.tc65 .tc-services{background:#152630}.tc65 .tc-service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.tc65 .tc-service{border-color:#405564;background:#1c303d}.tc65 .tc-service-media{height:clamp(180px,18vw,300px)}.tc65 .tc-service-copy{padding:20px}.tc65 .tc-why{background:#0e1b26}.tc65 .tc-process{background:#10202c}.tc65 .tc-process-grid article{background:#243744;border-color:#75d7c7}.tc65 .tc-area,.tc65 .tc-faq{background:#0d1720}.tc65 .tc-contact{background:#172631}.tc65 .tc-contact .tc-wrap>div:first-child,.tc65 .tc-contact .tc-wrap>div:first-child *{color:#f5f7f8}.tc65 .tc-contact .tc-wrap>div:last-child{color:#15232b}.tc65 .tc-map{background:#fff;color:#182c35}.tc65 .tc-map h1,.tc65 .tc-map h2,.tc65 .tc-map h3,.tc65 .tc-map p,.tc65 .tc-map .wrap{color:#182c35!important}.tc65 .tc-map .demo-map{color:#182c35!important}.tc65 .tc-service-copy h3,.tc65 .tc-service-copy p,.tc65 .tc-benefits h3,.tc65 .tc-benefits p,.tc65 .tc-process-grid h3,.tc65 .tc-process-grid p,.tc65 .tc-faq summary,.tc65 .tc-faq details p{color:#f5f7f8!important}.tc65 .tc-service-number{color:#8ce1d5}.tc65 .tc-cta{background:#24516a}
/* 66 CIVIC — informational civic masthead, list-based directory, bordered panels */
.tc66 .tc-hero{background:#e9eee9;border-bottom:10px solid #216e66}.tc66 .tc-hero .tc-wrap{grid-template-columns:1fr 1fr;min-height:550px}.tc66 .tc-hero-copy{padding:30px 0}.tc66 .tc-hero-media{height:440px;border:12px solid #fff}.tc66 .tc-services .tc-heading{display:flex;justify-content:space-between;align-items:end;max-width:none}.tc66 .tc-service-grid{grid-template-columns:1fr;gap:0}.tc66 .tc-service{display:grid;grid-template-columns:85px 220px 1fr;min-height:170px;border:0;border-top:1px solid #b4c5ba;background:transparent}.tc66 .tc-service-number{font-size:22px;padding:25px 12px}.tc66 .tc-service-media{height:170px;min-height:0}.tc66 .tc-service-copy{padding:24px 35px}.tc66 .tc-why{background:#e8eee7}.tc66 .tc-benefits{gap:0}.tc66 .tc-benefits article{border:1px solid #cad6ca;padding:25px}.tc66 .tc-process-grid article{border:1px solid #cbd7cc;border-top:5px solid #24766a}
/* 67 ARBOR — organic image-first cover and woven story layout */
.tc67 .tc-hero{background:#e8f0df}.tc67 .tc-hero .tc-wrap{grid-template-columns:.75fr 1.25fr;min-height:690px}.tc67 .tc-hero-media{height:680px;border-radius:50% 50% 15px 15px}.tc67 .tc-hero-copy{padding-right:20px}.tc67 .tc-hero h1{font-size:clamp(49px,5.7vw,95px)}.tc67 .tc-story{background:#dce9d4}.tc67 .tc-story .tc-wrap{grid-template-columns:.9fr 1.1fr}.tc67 .tc-story-media{height:570px;border-radius:48% 48% 12px 12px}.tc67 .tc-story-aside{display:none}.tc67 .tc-service-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:30px}.tc67 .tc-service:nth-child(2){margin-top:90px}.tc67 .tc-service:nth-child(3){margin-top:180px}.tc67 .tc-service:nth-child(4){grid-column:2;margin-top:-60px}.tc67 .tc-service{border:0;background:transparent}.tc67 .tc-service-media{height:320px;border-radius:140px 140px 0 0}.tc67 .tc-service-copy{padding:20px 0}.tc67 .tc-why{background:#edf4e9}
/* 68 PULSE — conversion-first billboard and action-driven stacked services */
.tc68 .tc-hero{background:#0e2842;color:#fff}.tc68 .tc-hero .tc-wrap{grid-template-columns:1.2fr .8fr;min-height:680px}.tc68 .tc-hero-copy{padding:60px 0}.tc68 .tc-hero h1{color:#fff;font-size:clamp(52px,7vw,120px);line-height:.95}.tc68 .tc-hero p{color:#e4effa}.tc68 .tc-hero-media{height:520px;transform:rotate(3deg);border:12px solid #fff}.tc68 .tc-services .tc-heading{max-width:none}.tc68 .tc-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tc68 .tc-service{grid-template-columns:42% 58%;background:#fff;border:0;box-shadow:0 6px 0 #c6d5e5}.tc68 .tc-service-number{display:none}.tc68 .tc-service-media{min-height:270px}.tc68 .tc-process{background:#e4eef9}.tc68 .tc-process-grid article{border-left:8px solid #d34432}.tc68 .tc-cta{background:#b63227}
/* 69 MONUMENT — full-width image above editorial title, architectural numbered list */
.tc69 .tc-hero{background:#ece7dd}.tc69 .tc-hero .tc-wrap{min-height:0}.tc69 .tc-hero-media{height:clamp(450px,52vw,780px)}.tc69 .tc-hero-copy{padding:65px 0 25px;grid-template-columns:1.4fr .6fr}.tc69 .tc-hero h1{font-size:clamp(52px,6vw,105px)}.tc69 .tc-services{background:#f4f0e9}.tc69 .tc-service-grid{display:block}.tc69 .tc-service{grid-template-columns:85px 30% 1fr;min-height:225px;background:transparent}.tc69 .tc-service-number{font-size:34px;padding:28px 10px}.tc69 .tc-service-media{height:225px}.tc69 .tc-service-copy{display:grid;grid-template-columns:1fr 1.2fr auto;gap:25px;padding:25px;align-items:center}.tc69 .tc-process{background:#ded9cf}.tc69 .tc-process-grid article{background:transparent;border-top:1px solid #a9a397}
/* 70 HORIZON — full-bleed panorama and asymmetric picture-led stories */
.tc70 .tc-hero{background:#edf3f1}.tc70 .tc-hero .tc-wrap{width:100%;min-height:0}.tc70 .tc-hero-media{height:clamp(480px,58vw,900px)}.tc70 .tc-hero-copy{width:calc(100% - clamp(32px,6vw,130px));margin:0 auto;padding:60px 0;text-align:left;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:25px}.tc70 .tc-hero-copy .tc-tag{grid-column:1/-1}.tc70 .tc-hero-copy h1{margin:0;font-size:clamp(48px,6vw,100px)}.tc70 .tc-hero-copy p{margin:0}.tc70 .tc-hero-copy .actions{grid-column:2;justify-content:flex-start}.tc70 .tc-services .tc-heading{max-width:none}.tc70 .tc-service-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:22px}.tc70 .tc-service{grid-column:span 2;border:0;background:transparent}.tc70 .tc-service:first-child{grid-column:span 4}.tc70 .tc-service:first-child .tc-service-media{height:clamp(320px,36vw,600px)}.tc70 .tc-service-media{height:clamp(210px,22vw,340px)}.tc70 .tc-service-copy{padding:22px 0}.tc70 .tc-story{background:#e3ebe8}.tc70 .tc-story .tc-wrap{grid-template-columns:1.15fr .85fr}.tc70 .tc-story-aside{display:none}.tc70 .tc-area{background:#f5f6f2}
@media(max-width:1100px){.tc61 .tc-service-grid,.tc63 .tc-service-grid,.tc65 .tc-service-grid,.tc67 .tc-service-grid,.tc68 .tc-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tc64 .tc-service-grid,.tc70 .tc-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tc64 .tc-service,.tc64 .tc-service:first-child,.tc64 .tc-service:nth-child(4),.tc64 .tc-service:nth-child(5),.tc70 .tc-service,.tc70 .tc-service:first-child{grid-column:auto;grid-row:auto}.tc67 .tc-service:nth-child(n){grid-column:auto;margin-top:0}.tc61 .tc-service:nth-child(even){margin-top:0}.tc62 .tc-service{grid-template-columns:65px 30% 1fr}.tc66 .tc-service{grid-template-columns:65px 30% 1fr}.tc69 .tc-service{grid-template-columns:65px 30% 1fr}.tc69 .tc-service-copy{grid-template-columns:1fr}.tc .tc-story .tc-wrap{grid-template-columns:1fr 1fr}.tc .tc-story-aside{display:none}.tc64 .tc-story-media{order:0}.tc64 .tc-story-copy{order:0}}
@media(max-width:800px){.tc .tc-wrap{width:calc(100% - 36px)}.tc61 .tc-hero .tc-wrap,.tc62 .tc-hero .tc-wrap,.tc63 .tc-hero-copy,.tc64 .tc-hero .tc-wrap,.tc65 .tc-hero .tc-wrap,.tc66 .tc-hero .tc-wrap,.tc67 .tc-hero .tc-wrap,.tc68 .tc-hero .tc-wrap,.tc70 .tc-hero-copy,.tc .tc-story .tc-wrap{display:grid;grid-template-columns:1fr;gap:26px}.tc61 .tc-hero-copy,.tc64 .tc-hero-copy{padding:25px 0;margin:0;box-shadow:none}.tc62 .tc-hero{min-height:0}.tc62 .tc-hero .tc-wrap{min-height:0;display:grid;padding:50px 0}.tc62 .tc-hero-copy{width:100%;padding:0}.tc62 .tc-hero-media{position:relative;inset:auto;height:360px;opacity:1}.tc63 .tc-hero-copy .tc-tag,.tc63 .tc-hero-copy .actions,.tc70 .tc-hero-copy .tc-tag,.tc70 .tc-hero-copy .actions{grid-column:auto}.tc63 .tc-hero-copy,.tc70 .tc-hero-copy{padding:35px 0}.tc70 .tc-hero-copy{width:calc(100% - 36px)}.tc61 .tc-hero-media,.tc64 .tc-hero-media,.tc65 .tc-hero-media,.tc66 .tc-hero-media,.tc67 .tc-hero-media,.tc68 .tc-hero-media{height:clamp(310px,55vw,500px);transform:none}.tc .tc-story-media{height:360px}.tc .tc-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tc .tc-hero .tc-wrap{min-height:0}.tc61 .tc-hero h1,.tc62 .tc-hero h1,.tc65 .tc-hero h1,.tc68 .tc-hero h1{font-size:clamp(40px,7vw,72px)}.tc65 .tc-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tc69 .tc-hero-copy{grid-template-columns:1fr}.tc69 .tc-hero-copy .tc-tag{grid-column:auto}}
@media(max-width:600px){.tc .tc-wrap{width:calc(100% - 30px)}.tc .tc-service-grid,.tc61 .tc-service-grid,.tc63 .tc-service-grid,.tc64 .tc-service-grid,.tc65 .tc-service-grid,.tc67 .tc-service-grid,.tc68 .tc-service-grid,.tc70 .tc-service-grid{grid-template-columns:1fr}.tc62 .tc-service,.tc66 .tc-service,.tc69 .tc-service,.tc68 .tc-service{display:block}.tc62 .tc-service-number,.tc66 .tc-service-number,.tc69 .tc-service-number{font-size:16px;padding:15px 0}.tc62 .tc-service-media,.tc66 .tc-service-media,.tc69 .tc-service-media,.tc68 .tc-service-media{height:230px;min-height:0}.tc62 .tc-service-copy,.tc66 .tc-service-copy,.tc69 .tc-service-copy{padding:20px 0}.tc64 .tc-service:first-child .tc-service-media,.tc70 .tc-service:first-child .tc-service-media{height:250px}.tc67 .tc-service-media{height:260px}.tc63 .tc-hero-media,.tc70 .tc-hero-media{height:350px}.tc .tc-hero-copy h1{font-size:clamp(38px,10vw,58px)}.tc .tc-story-media{height:280px}.tc65 .tc-hero-media{box-shadow:none}.tc61 .tc-service:nth-child(even){margin-top:0}}


/* Phase 4.12C-04 — screenshot QA: legibility, responsive geometry, card balance. */
.tc.tc61,.tc.tc62,.tc.tc63,.tc.tc64,.tc.tc65,.tc.tc66,.tc.tc67,.tc.tc68,.tc.tc69,.tc.tc70{font-size:clamp(15px,1.02vw,18px)}
.tc .tc-service-copy p,.tc .tc-benefits p,.tc .tc-process-grid p,.tc .tc-story-copy p{font-size:clamp(14px,.98vw,17px);line-height:1.65}
.tc .tc-service-copy{min-width:0}.tc .tc-service-grid{align-items:stretch}.tc .tc-service{min-width:0}.tc .tc-service-media{min-width:0}.tc .tc-photo{max-width:100%}
.tc .tc-hero-media,.tc .tc-story-media,.tc .tc-area-media{isolation:isolate}.tc .tc-media-caption{max-width:calc(100% - 30px);font-size:10px;line-height:1.4}
.tc .tc-story-copy{min-width:0}.tc .tc-story-copy p{max-width:68ch}
.tc65 .tc-why,.tc65 .tc-services,.tc65 .tc-process,.tc65 .tc-area,.tc65 .tc-faq,.tc65 .tc-contact{color:#f3f7f8}
.tc65 .tc-benefits article,.tc65 .tc-service,.tc65 .tc-process-grid article{color:#f3f7f8;background:#1c303d}
.tc65 .tc-benefits h3,.tc65 .tc-benefits p,.tc65 .tc-service-copy h3,.tc65 .tc-service-copy p,.tc65 .tc-process-grid h3,.tc65 .tc-process-grid p,.tc65 .tc-step-number,.tc65 .tc-benefit-number{color:#f3f7f8!important;opacity:1}
.tc65 .tc-benefit-number,.tc65 .tc-step-number{color:#8de5d7!important}.tc65 .tc-service-copy a{color:#9ef2e3!important}
.tc65 .tc-contact> .tc-wrap h2,.tc65 .tc-contact> .tc-wrap p{color:#f3f7f8!important}
.tc65 .tc-map,.tc65 .tc-map *{color:#182e39}.tc65 .tc-map{background:#fff}.tc65 .tc-map h2,.tc65 .tc-map h3,.tc65 .tc-map p{color:#182e39!important}
.tc68 .tc-process-grid article{background:#fff;color:#162d42}.tc68 .tc-process-grid h3,.tc68 .tc-process-grid p{color:#162d42!important}
.tc62 .tc-process-grid article{color:#142b40}.tc62 .tc-process-grid h3,.tc62 .tc-process-grid p{color:#142b40!important}
.tc61 .tc-story .tc-wrap,.tc63 .tc-story .tc-wrap,.tc67 .tc-story .tc-wrap,.tc70 .tc-story .tc-wrap{align-items:center}
.tc61 .tc-story-media,.tc63 .tc-story-media,.tc67 .tc-story-media,.tc70 .tc-story-media{max-height:520px;overflow:hidden}
.tc61 .tc-story-aside,.tc63 .tc-story-aside,.tc67 .tc-story-aside,.tc70 .tc-story-aside{max-height:300px;overflow:hidden}
.tc64 .tc-service-grid{align-items:stretch}.tc64 .tc-service{height:100%}.tc64 .tc-service-copy{padding:clamp(18px,2vw,30px)}
.tc .tc-map{width:100%;max-width:none}.tc .tc-map iframe{display:block;width:100%!important;max-width:none!important;min-height:330px}
@media(max-width:1000px){.tc .tc-service-copy p,.tc .tc-benefits p,.tc .tc-process-grid p{font-size:15px}.tc64 .tc-hero-copy{margin:0;box-shadow:none}.tc64 .tc-hero-media{clip-path:none}}
@media(max-width:800px){.tc61 .tc-hero .tc-wrap,.tc67 .tc-hero .tc-wrap{min-height:0}.tc61 .tc-hero-copy,.tc67 .tc-hero-copy{padding:30px 0}.tc61 .tc-hero-media,.tc67 .tc-hero-media{height:clamp(300px,65vw,480px)}.tc62 .tc-hero-media{opacity:.22}.tc62 .tc-hero-copy{position:relative;z-index:2;width:100%}.tc .tc-story-aside{display:none}}
@media(max-width:600px){.tc .tc-hero-copy h1{font-size:clamp(36px,9vw,56px);line-height:1.05}.tc .tc-service-copy{padding:18px}.tc .tc-hero-media,.tc .tc-area-media{max-height:400px}.tc65 .tc-service-grid,.tc68 .tc-service-grid{grid-template-columns:1fr}.tc .tc-map iframe{min-height:270px}}

/* Phase 4.12C-05: post-install screenshot fixes; deliberately isolated to 61–70. */
.tc.tc65 .tc-benefits article,.tc.tc65 .tc-process-grid article,.tc.tc65 .tc-service-copy{background:#203644!important;color:#f6fafb!important}
.tc.tc65 .tc-benefits article :is(h3,p,span),.tc.tc65 .tc-process-grid article :is(h3,p,span),.tc.tc65 .tc-service-copy :is(h3,p){color:#f6fafb!important;opacity:1!important;-webkit-text-fill-color:#f6fafb!important}
.tc.tc65 .tc-service-copy a{color:#a9fff0!important;-webkit-text-fill-color:#a9fff0!important}
.tc.tc65 .tc-benefits article .tc-benefit-number,.tc.tc65 .tc-process-grid article .tc-step-number{color:#80e7d4!important;-webkit-text-fill-color:#80e7d4!important}
.tc.tc65 .tc-contact .lead,.tc.tc65 .tc-contact .lead :is(h1,h2,h3,p,span,small,label){color:#172d3b!important;-webkit-text-fill-color:#172d3b!important}
.tc.tc68 .tc-process-grid article{background:#fff!important;color:#182d40!important}
.tc.tc68 .tc-process-grid article :is(h3,p,span){color:#182d40!important;opacity:1!important;-webkit-text-fill-color:#182d40!important}
.tc.tc68 .tc-process-grid article .tc-step-number{color:#007b75!important;-webkit-text-fill-color:#007b75!important}
.tc.tc62 .tc-process-grid article :is(h3,p){color:#fff!important;-webkit-text-fill-color:#fff!important}
.tc.tc62 .tc-process-grid article{background:#253f50!important}
.tc .tc-service-media,.tc .tc-hero-media,.tc .tc-area-media,.tc .tc-story-media{overflow:hidden}
.tc .tc-service-media .tc-photo,.tc .tc-hero-media .tc-photo,.tc .tc-area-media .tc-photo,.tc .tc-story-media .tc-photo{display:block;width:100%;height:100%;object-position:center}
/* Preserve uncropped preview art labels, but use cover for actual customer photos. */
.tc .tc-service-media .tc-photo:not(.awb-412b-preview-art),.tc .tc-hero-media .tc-photo:not(.awb-412b-preview-art),.tc .tc-area-media .tc-photo:not(.awb-412b-preview-art),.tc .tc-story-media .tc-photo:not(.awb-412b-preview-art){object-fit:cover}
.tc.tc61 .tc-service-grid,.tc.tc64 .tc-service-grid,.tc.tc67 .tc-service-grid,.tc.tc70 .tc-service-grid{align-items:stretch}
.tc.tc61 .tc-service:nth-child(even),.tc.tc67 .tc-service:nth-child(n){margin-top:0;transform:none}
.tc.tc61 .tc-service,.tc.tc67 .tc-service,.tc.tc70 .tc-service{display:flex;flex-direction:column;height:100%}
.tc.tc61 .tc-service-copy,.tc.tc67 .tc-service-copy,.tc.tc70 .tc-service-copy{flex:1}
.tc.tc61 .tc-service-media,.tc.tc67 .tc-service-media{height:clamp(240px,23vw,390px)}
.tc.tc64 .tc-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.tc.tc64 .tc-service,.tc.tc64 .tc-service:first-child,.tc.tc64 .tc-service:nth-child(4),.tc.tc64 .tc-service:nth-child(5){grid-column:auto;grid-row:auto}
.tc.tc64 .tc-service:first-child .tc-service-media,.tc.tc64 .tc-service:not(:first-child) .tc-service-media{height:clamp(220px,22vw,340px)}
.tc.tc64 .tc-hero-copy{margin-right:-45px;max-width:100%}
.tc.tc64 .tc-hero-media{min-width:0}
.tc.tc70 .tc-service:first-child{grid-column:auto}.tc.tc70 .tc-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tc.tc70 .tc-service:first-child .tc-service-media,.tc.tc70 .tc-service-media{height:clamp(220px,24vw,370px)}
.tc .tc-service-copy{overflow-wrap:anywhere}.tc .tc-service-copy p,.tc .tc-benefits p,.tc .tc-process-grid p{line-height:1.6}
.tc .tc-map,.tc .tc-map>.wrap,.tc .tc-map iframe,.tc .tc-map .demo-map,.tc .tc-map .demo-map-art{width:100%!important;max-width:none!important}
@media(max-width:900px){.tc.tc64 .tc-hero-copy{margin-right:0}.tc.tc61 .tc-service-grid,.tc.tc67 .tc-service-grid,.tc.tc64 .tc-service-grid,.tc.tc70 .tc-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tc.tc61 .tc-service-media,.tc.tc67 .tc-service-media{height:250px}}
@media(max-width:600px){.tc.tc61 .tc-service-grid,.tc.tc67 .tc-service-grid,.tc.tc64 .tc-service-grid,.tc.tc70 .tc-service-grid{grid-template-columns:1fr}.tc.tc64 .tc-service:first-child .tc-service-media,.tc.tc64 .tc-service:not(:first-child) .tc-service-media,.tc.tc70 .tc-service:first-child .tc-service-media,.tc.tc70 .tc-service-media{height:240px}.tc.tc65 .tc-benefits{grid-template-columns:1fr}.tc .tc-service-copy{padding:18px}}

/* Phase 4.12C-06: number-free cards and stable Horizon image grid. */
.tc .tc-service-number,.tc .tc-benefit-number,.tc .tc-step-number{display:none!important}
.tc.tc70 .tc-service-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:clamp(18px,2.5vw,38px)!important;align-items:stretch!important}
.tc.tc70 .tc-service,.tc.tc70 .tc-service:first-child,.tc.tc70 .tc-service:nth-child(n){grid-column:auto!important;grid-row:auto!important;display:flex!important;flex-direction:column!important;margin:0!important;transform:none!important;min-width:0!important;width:100%!important;height:auto!important;background:#fff!important;border:1px solid #d5e2df!important;border-radius:8px!important;overflow:hidden!important}
.tc.tc70 .tc-service-media,.tc.tc70 .tc-service:first-child .tc-service-media{display:block!important;width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:16/9!important;flex:none!important;overflow:hidden!important;background:#0b5559!important}
.tc.tc70 .tc-service-media .tc-photo{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
.tc.tc70 .tc-service-copy{display:flex!important;flex-direction:column!important;gap:10px!important;flex:1!important;padding:clamp(18px,2vw,28px)!important;min-height:0!important}
.tc.tc70 .tc-service-copy h3,.tc.tc70 .tc-service-copy p{margin:0!important}
.tc.tc70 .tc-service-copy a{margin-top:auto!important;align-self:flex-start!important}
.tc.tc70 .tc-heading{margin-bottom:30px!important}
.tc.tc70 .tc-services,.tc.tc70 .tc-story,.tc.tc70 .tc-area,.tc.tc70 .tc-why,.tc.tc70 .tc-process{padding-block:clamp(52px,6vw,92px)!important}
.tc.tc70 .tc-story .tc-wrap{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:clamp(25px,5vw,75px)!important;align-items:center!important}
.tc.tc70 .tc-story-media{width:100%!important;height:auto!important;aspect-ratio:4/3!important;max-height:none!important}
.tc.tc70 .tc-story-media .tc-photo{width:100%!important;height:100%!important;object-fit:cover!important}
.tc.tc70 .tc-hero-media{max-height:580px!important}
.tc.tc70 .tc-hero-copy{gap:24px!important}
@media(max-width:750px){.tc.tc70 .tc-service-grid{grid-template-columns:1fr!important}.tc.tc70 .tc-story .tc-wrap{grid-template-columns:1fr!important}.tc.tc70 .tc-hero-copy{display:block!important}.tc.tc70 .tc-hero-copy p{margin-top:16px!important}.tc.tc70 .tc-hero-copy .actions{margin-top:18px!important}.tc.tc70 .tc-hero-media{height:clamp(260px,55vw,420px)!important}}

/* Phase 4.12C-07: prevent collapsed media tracks, improve reading width and rhythm. */
.tc .tc-service-grid,.tc .tc-service,.tc .tc-service-copy,.tc .tc-service-media{min-width:0;max-width:100%}
.tc .tc-service-copy h3{font-size:clamp(17px,1.35vw,23px);line-height:1.25}
.tc .tc-service-copy p{font-size:clamp(14px,1vw,17px);line-height:1.55;overflow-wrap:normal;word-break:normal}
.tc .tc-service-copy a{font-size:clamp(13px,.9vw,16px)}
.tc .tc-hero-copy p,.tc .tc-story-copy p,.tc .tc-area-copy p,.tc .tc-why p{max-width:65ch}
.tc>section:not(.tc-map){padding-block:clamp(42px,4.5vw,76px)}
.tc .tc-hero .tc-wrap,.tc .tc-story .tc-wrap,.tc .tc-area .tc-wrap{align-items:center}
.tc .tc-service-media{overflow:hidden;flex-shrink:0}
.tc .tc-service-media .tc-photo{width:100%;height:100%;object-fit:cover}
/* Horizontal-list variants: explicit fixed-width media prevents percentage tracks collapsing. */
.tc.tc62 .tc-service-grid,.tc.tc66 .tc-service-grid,.tc.tc69 .tc-service-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.tc.tc62 .tc-service,.tc.tc66 .tc-service,.tc.tc69 .tc-service{display:grid!important;grid-template-columns:clamp(185px,27vw,390px) minmax(0,1fr)!important;align-items:stretch;gap:0;min-width:0;min-height:0;width:100%;margin:0;transform:none}
.tc.tc62 .tc-service-media,.tc.tc66 .tc-service-media,.tc.tc69 .tc-service-media{display:block;width:100%!important;height:clamp(175px,17vw,270px)!important;min-height:0!important;align-self:stretch}
.tc.tc62 .tc-service-copy,.tc.tc66 .tc-service-copy,.tc.tc69 .tc-service-copy{display:flex!important;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;padding:clamp(18px,2.5vw,36px)!important;min-width:0;width:100%;max-width:none}
.tc.tc62 .tc-service-copy :is(h3,p,a),.tc.tc66 .tc-service-copy :is(h3,p,a),.tc.tc69 .tc-service-copy :is(h3,p,a){width:auto;max-width:75ch;margin:0;grid-column:auto}
.tc.tc62 .tc-service,.tc.tc66 .tc-service,.tc.tc69 .tc-service{border-bottom:1px solid var(--tc-line)}
/* Keep editorial/arched cards balanced rather than an orphan fourth card. */
.tc.tc63 .tc-service-grid,.tc.tc67 .tc-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2.5vw,34px)}
.tc.tc63 .tc-service,.tc.tc67 .tc-service{margin:0;transform:none;min-width:0}
.tc.tc63 .tc-service-media,.tc.tc67 .tc-service-media{height:clamp(210px,23vw,350px)}
/* Prevent full-height image cropping in the feature/story block. */
.tc .tc-story-media,.tc .tc-area-media{min-width:0;max-width:100%}
.tc .tc-story-copy{min-width:0}
.tc.tc70 .tc-services,.tc.tc70 .tc-story,.tc.tc70 .tc-area,.tc.tc70 .tc-why,.tc.tc70 .tc-process{padding-block:clamp(44px,4.5vw,75px)!important}
@media(max-width:760px){
.tc.tc62 .tc-service,.tc.tc66 .tc-service,.tc.tc69 .tc-service{grid-template-columns:minmax(0,1fr)!important;display:flex!important;flex-direction:column}
.tc.tc62 .tc-service-media,.tc.tc66 .tc-service-media,.tc.tc69 .tc-service-media{height:auto!important;aspect-ratio:16/9;min-height:0!important}
.tc.tc62 .tc-service-copy,.tc.tc66 .tc-service-copy,.tc.tc69 .tc-service-copy{padding:18px!important}
.tc.tc63 .tc-service-grid,.tc.tc67 .tc-service-grid{grid-template-columns:minmax(0,1fr)}
.tc .tc-hero-copy h1{font-size:clamp(34px,8vw,60px)}
.tc>section:not(.tc-map){padding-block:clamp(32px,7vw,55px)}
}

/* Phase 4.12C-08: focused visual corrections for 62, 65, 68, 70. */
/* Preview artwork includes embedded lettering: show the complete artwork rather than cropping its labels. */
.tc.tc62 .tc-photo.awb-412b-preview-art,.tc.tc65 .tc-photo.awb-412b-preview-art,.tc.tc68 .tc-photo.awb-412b-preview-art,.tc.tc70 .tc-photo.awb-412b-preview-art{object-fit:contain!important;object-position:center!important;background:#0b5559!important}
.tc.tc62 .tc-service-media,.tc.tc65 .tc-service-media,.tc.tc68 .tc-service-media,.tc.tc70 .tc-service-media{background:#0b5559}
/* Titan: headline stays inside its panel, wrapping naturally without overlapping the picture. */
.tc.tc62 .tc-hero .tc-wrap{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:clamp(24px,3vw,64px)!important;min-height:0!important;align-items:center!important}
.tc.tc62 .tc-hero-copy{width:100%!important;min-width:0!important;padding:clamp(40px,5vw,90px) 0!important;position:relative!important;z-index:2!important}
.tc.tc62 .tc-hero-copy h1{font-size:clamp(40px,4.25vw,78px)!important;line-height:1.02!important;letter-spacing:-.04em!important;max-width:100%!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important}
.tc.tc62 .tc-hero-media{position:relative!important;inset:auto!important;width:100%!important;height:clamp(360px,39vw,640px)!important;opacity:1!important;min-width:0!important;border-left:7px solid #e9b34a!important}
.tc.tc62 .tc-hero-copy p{max-width:52ch!important}
/* Nocturne: ensure all four service illustrations remain fully legible. */
.tc.tc65 .tc-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:clamp(16px,2vw,28px)!important}
.tc.tc65 .tc-service{min-width:0!important}
.tc.tc65 .tc-service-media{height:auto!important;aspect-ratio:16/9!important;min-height:0!important}
.tc.tc65 .tc-service-copy{padding:clamp(18px,2vw,28px)!important}
/* Pulse: give image and copy their own unconstrained tracks. */
.tc.tc68 .tc-service{display:grid!important;grid-template-columns:minmax(210px,44%) minmax(0,1fr)!important;min-width:0!important}
.tc.tc68 .tc-service-media{height:auto!important;min-height:230px!important;align-self:stretch!important}
.tc.tc68 .tc-service-copy{min-width:0!important;padding:clamp(18px,2vw,30px)!important}
.tc.tc68 .tc-service-copy h3,.tc.tc68 .tc-service-copy p{overflow-wrap:normal!important;word-break:normal!important}
/* Horizon: editorial split hero, image LEFT, headline and actions RIGHT. */
.tc.tc70 .tc-hero .tc-wrap{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)!important;gap:clamp(24px,4vw,75px)!important;width:calc(100% - clamp(32px,6vw,130px))!important;align-items:center!important;min-height:0!important}
.tc.tc70 .tc-hero-media{grid-column:1!important;grid-row:1!important;width:100%!important;height:auto!important;aspect-ratio:4/3!important;max-height:600px!important;min-width:0!important}
.tc.tc70 .tc-hero-copy{grid-column:2!important;grid-row:1!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;text-align:left!important;width:100%!important;min-width:0!important;padding:clamp(28px,4vw,70px) 0!important;margin:0!important;gap:18px!important}
.tc.tc70 .tc-hero-copy h1{font-size:clamp(36px,3.6vw,70px)!important;line-height:1.09!important;letter-spacing:-.035em!important;max-width:100%!important;margin:0!important}
.tc.tc70 .tc-hero-copy p{margin:0!important;max-width:52ch!important}
.tc.tc70 .tc-hero-copy .actions{justify-content:flex-start!important;display:flex!important;flex-wrap:wrap!important;margin:0!important}
.tc.tc70 .tc-hero-copy .tc-tag{margin:0!important}
@media(max-width:950px){
.tc.tc62 .tc-hero .tc-wrap,.tc.tc70 .tc-hero .tc-wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
.tc.tc62 .tc-hero-copy h1{font-size:clamp(34px,4.7vw,52px)!important}
.tc.tc70 .tc-hero-copy h1{font-size:clamp(32px,4.3vw,52px)!important}
.tc.tc68 .tc-service-grid{grid-template-columns:1fr!important}
}
@media(max-width:700px){
.tc.tc62 .tc-hero .tc-wrap,.tc.tc70 .tc-hero .tc-wrap{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:18px!important}
.tc.tc62 .tc-hero-copy{order:0!important;padding:35px 0 0!important}
.tc.tc62 .tc-hero-media{order:1!important;height:auto!important;aspect-ratio:16/10!important;border-left:0!important}
.tc.tc62 .tc-hero-copy h1{font-size:clamp(34px,8.2vw,58px)!important}
.tc.tc70 .tc-hero-media{order:0!important;aspect-ratio:16/10!important;height:auto!important;max-height:none!important}
.tc.tc70 .tc-hero-copy{order:1!important;padding:14px 0 36px!important}
.tc.tc70 .tc-hero-copy h1{font-size:clamp(34px,8vw,55px)!important}
.tc.tc65 .tc-service-grid{grid-template-columns:1fr!important}
.tc.tc68 .tc-service{display:flex!important;flex-direction:column!important}
.tc.tc68 .tc-service-media{width:100%!important;height:auto!important;aspect-ratio:16/9!important;min-height:0!important}
}
.td{--td-bg:#f6f7f4;--td-paper:#fff;--td-ink:#21323a;--td-line:#d9e1df;--td-accent:#087f77;background:var(--td-bg);color:var(--td-ink);overflow:hidden;font-size:clamp(15px,1vw,18px)}
.td *{box-sizing:border-box}.td .td-wrap{width:calc(100% - clamp(30px,7vw,140px));max-width:1600px;margin-inline:auto}.td>section:not(.td-map){padding:clamp(48px,5.5vw,90px) 0}.td :is(h1,h2,h3,p){overflow-wrap:break-word}.td h1{font-size:clamp(40px,4.6vw,78px);line-height:1.08;letter-spacing:-.045em;margin:0 0 24px}.td h2{font-size:clamp(29px,3vw,51px);line-height:1.14;letter-spacing:-.03em;margin:0 0 20px}.td h3{font-size:clamp(18px,1.45vw,24px);line-height:1.25;margin:0 0 10px}.td p{font-size:clamp(15px,1.03vw,18px);line-height:1.65}.td .td-eyebrow{display:block;font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--td-accent);margin-bottom:17px}.td .td-hero-grid,.td .td-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,5vw,85px);align-items:center}.td .td-hero-copy{min-width:0}.td .td-hero-copy p{max-width:56ch}.td .td-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.td .td-hero-media,.td .td-story-media,.td .td-area-media,.td .td-card-media{overflow:hidden;background:#0c5558;position:relative}.td .td-hero-media{aspect-ratio:5/4}.td .td-story-media,.td .td-area-media{aspect-ratio:4/3}.td .td-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.td .td-photo.awb-412b-preview-art{object-fit:contain;background:#0c5558}.td .td-services,.td .td-contact{background:var(--td-paper)}.td .td-section-head{max-width:790px;margin-bottom:34px}.td .td-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2vw,32px)}.td .td-card{min-width:0;display:flex;flex-direction:column;border:1px solid var(--td-line);background:var(--td-paper);overflow:hidden}.td .td-card-media{aspect-ratio:16/9;flex:none}.td .td-card-copy{padding:clamp(18px,2vw,30px);display:flex;flex-direction:column;flex:1;gap:6px}.td .td-card-copy p{margin:0 0 12px}.td .td-card-copy a{color:var(--td-accent);font-weight:750;margin-top:auto}.td .td-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.td .td-benefits article{padding:20px;border-top:2px solid var(--td-line)}.td .td-story{background:#e7efec}.td .td-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:30px}.td .td-steps article{padding:25px;background:var(--td-paper);border-top:3px solid var(--td-accent)}.td .td-faq details{border-bottom:1px solid var(--td-line);padding:17px 0}.td .td-faq summary{font-weight:750;cursor:pointer}.td .td-faq details p{margin-bottom:0}.td .td-cta{text-align:center;background:#15313e;color:#fff}.td .td-cta :is(h2,p){color:#fff}.td .td-cta .td-actions{justify-content:center}.td .td-contact .td-two{align-items:start}.td .td-map,.td .td-map>.wrap,.td .td-map iframe,.td .td-map .demo-map,.td .td-map .demo-map-art,.td .td-map .map-card{width:100%!important;max-width:none!important}.td .td-map{padding:0!important}.td .td-map iframe,.td .td-map .demo-map-art{min-height:320px}
/* 71 VERDANT: organic offset editorial */
.td71{--td-bg:#f2f5eb;--td-ink:#304735;--td-line:#cbd9c8;--td-accent:#377b58}.td71 h1,.td71 h2{font-family:Georgia,serif;font-weight:400}.td71 .td-hero{background:#e8f0e1}.td71 .td-hero-grid{grid-template-columns:.85fr 1.15fr}.td71 .td-hero-media{border-radius:45% 45% 8px 8px;aspect-ratio:4/5}.td71 .td-story-media{border-radius:200px 200px 0 0}.td71 .td-card-media{border-radius:120px 120px 0 0}.td71 .td-card{border:0;background:transparent}
/* 72 GALLERY: spacious contemporary gallery */
.td72{--td-bg:#f7f4ef;--td-ink:#342f2b;--td-line:#d7cec3;--td-accent:#a15d41}.td72 h1,.td72 h2{font-family:Georgia,serif;font-weight:400}.td72 .td-hero-grid{grid-template-columns:1fr 1.2fr}.td72 .td-hero-media{aspect-ratio:1/1}.td72 .td-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.td72 .td-card-media{aspect-ratio:3/4}.td72 .td-card-copy{padding:20px 0}.td72 .td-card{border:0;background:transparent}.td72 .td-story{background:#eae2d8}
/* 73 IRONWOOD: structured industrial */
.td73{--td-bg:#eaf0f2;--td-ink:#183144;--td-line:#b8c8d1;--td-accent:#087f83}.td73 .td-hero{background:#132c3c;color:#fff}.td73 .td-hero :is(h1,p){color:#fff}.td73 .td-hero-media{border:10px solid #315266;aspect-ratio:1/1}.td73 .td-card{display:grid;grid-template-columns:42% minmax(0,1fr)}.td73 .td-card-media{aspect-ratio:auto;min-height:250px}.td73 .td-process{background:#dce7ed}
/* 74 CASCADE: image-led community first */
.td74{--td-bg:#edf6f7;--td-ink:#20434d;--td-line:#c4dfe1;--td-accent:#147e8c}.td74 .td-hero-grid{display:flex;flex-direction:column-reverse;align-items:stretch;gap:35px}.td74 .td-hero-media{aspect-ratio:21/9}.td74 .td-hero-copy{display:grid;grid-template-columns:1fr 1fr;gap:12px 45px;align-items:center}.td74 .td-hero-copy .td-eyebrow{grid-column:1/-1}.td74 .td-hero-copy .td-actions{grid-column:2}.td74 .td-area{background:#dceff0}.td74 .td-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
/* 75 KINETIC: bold, high-contrast conversion layout */
.td75{--td-bg:#f1f4f9;--td-ink:#1b304c;--td-line:#c8d4e5;--td-accent:#d84b35}.td75 .td-hero{background:#142c4c;color:#fff}.td75 .td-hero :is(h1,p){color:#fff}.td75 .td-hero h1{font-weight:900;text-transform:uppercase;font-size:clamp(39px,5.2vw,88px)}.td75 .td-hero-media{transform:rotate(2deg);border:10px solid #fff}.td75 .td-card{display:grid;grid-template-columns:45% minmax(0,1fr)}.td75 .td-card-media{aspect-ratio:auto;min-height:250px}.td75 .td-cta{background:#b73427}.td75 .td-steps article{border-left:5px solid #d84b35;border-top:0}
/* 76 HEARTH: warm approachable service */
.td76{--td-bg:#faf4e9;--td-ink:#443b31;--td-line:#e0d2bf;--td-accent:#a76839}.td76 h1,.td76 h2{font-family:Georgia,serif;font-weight:400}.td76 .td-hero{background:#f0e4d2}.td76 .td-hero-media,.td76 .td-story-media{border-radius:22px}.td76 .td-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.td76 .td-card{border-radius:20px}.td76 .td-card-media{aspect-ratio:5/3}.td76 .td-why{background:#f2e9dc}
/* 77 GRIDLINE: modern architectural typography and ruled panels */
.td77{--td-bg:#f1f3f3;--td-ink:#242d31;--td-line:#bfc8ca;--td-accent:#217b75}.td77 .td-hero-grid{grid-template-columns:1.2fr .8fr}.td77 .td-hero h1{text-transform:uppercase;font-weight:850}.td77 .td-hero-media{aspect-ratio:3/4}.td77 .td-cards{gap:0}.td77 .td-card{border:0;border-top:2px solid var(--td-line);display:grid;grid-template-columns:38% minmax(0,1fr)}.td77 .td-card-media{aspect-ratio:auto;min-height:210px}.td77 .td-benefits article{border:1px solid var(--td-line)}
/* 78 AURORA: dark premium with accessible contrast */
.td78{--td-bg:#0f1d29;--td-paper:#1c303d;--td-ink:#f5f8fa;--td-line:#405968;--td-accent:#8ee6d7;color:#f5f8fa}.td78 :is(h1,h2,h3,p,summary){color:#f5f8fa}.td78 .td-hero{background:#0a1621}.td78 .td-hero-media{border:1px solid #67828f;box-shadow:18px 18px 0 #28414f}.td78 .td-card{background:#1c303d}.td78 .td-card-copy a{color:#9af3e5}.td78 .td-story,.td78 .td-why,.td78 .td-area{background:#172936}.td78 .td-steps article{background:#253d4a}.td78 .td-contact{background:#1c303d}.td78 .td-lead,.td78 .td-lead :is(h1,h2,h3,p,label,small){color:#18313d}.td78 .td-map,.td78 .td-map :is(h1,h2,h3,p){background:#fff;color:#18313d!important}
/* 79 FIELDNOTE: editorial magazine with side-by-side storytelling */
.td79{--td-bg:#f6f4ed;--td-ink:#31372f;--td-line:#d0d2c4;--td-accent:#637d49}.td79 h1,.td79 h2{font-family:Georgia,serif;font-weight:400}.td79 .td-hero-grid{grid-template-columns:.75fr 1.25fr}.td79 .td-hero-media{aspect-ratio:5/4}.td79 .td-story{background:#e9ecdf}.td79 .td-story .td-two{grid-template-columns:1.2fr .8fr}.td79 .td-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.td79 .td-card{border:0;border-bottom:1px solid var(--td-line);background:transparent}
/* 80 NOVA: asymmetric crisp product-like layout */
.td80{--td-bg:#f2f7f7;--td-ink:#1a3541;--td-line:#c7dfe0;--td-accent:#008a91}.td80 .td-hero{background:#dceff0}.td80 .td-hero-grid{grid-template-columns:1fr 1fr}.td80 .td-hero-media{aspect-ratio:1/1;clip-path:polygon(12% 0,100% 0,100% 88%,88% 100%,0 100%,0 12%)}.td80 .td-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.td80 .td-card:first-child{grid-column:span 2}.td80 .td-card:first-child .td-card-media{aspect-ratio:16/7}.td80 .td-cta{background:#0b4d5a}
@media(max-width:1100px){.td72 .td-cards,.td74 .td-cards,.td80 .td-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.td80 .td-card:first-child{grid-column:auto}.td74 .td-hero-copy{display:block}.td74 .td-hero-copy .td-actions{margin-top:20px}}
@media(max-width:800px){.td .td-hero-grid,.td .td-two,.td77 .td-hero-grid,.td79 .td-hero-grid{grid-template-columns:1fr}.td .td-hero-media{aspect-ratio:16/10;max-height:470px}.td .td-cards,.td72 .td-cards,.td74 .td-cards,.td80 .td-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.td73 .td-card,.td75 .td-card,.td77 .td-card{display:flex;flex-direction:column}.td73 .td-card-media,.td75 .td-card-media,.td77 .td-card-media{aspect-ratio:16/9;min-height:0}.td75 .td-hero-media{transform:none}.td .td-steps{grid-template-columns:1fr}.td74 .td-hero-grid{display:flex}.td79 .td-story .td-two{grid-template-columns:1fr}.td80 .td-card:first-child .td-card-media{aspect-ratio:16/9}}
@media(max-width:580px){.td .td-wrap{width:calc(100% - 30px)}.td>section:not(.td-map){padding:40px 0}.td .td-cards,.td72 .td-cards,.td74 .td-cards,.td80 .td-cards,.td .td-benefits{grid-template-columns:1fr}.td .td-card-media{aspect-ratio:16/9}.td h1{font-size:clamp(36px,9vw,54px)}.td .td-hero-media{aspect-ratio:16/10}.td78 .td-hero-media{box-shadow:none}.td80 .td-hero-media{clip-path:none}.td .td-map iframe{min-height:260px}}

/* Phase 4.12D-03: structural layout redesign — template-specific hero architecture */
.td .td-hero .td-wrap{max-width:1700px}.td .td-hero .td-photo{width:100%;height:100%;object-fit:cover}.td .td-hero :is(.td-gallery-main,.td-gallery-side,.td-panorama-image,.td-action-visual,.td-welcome-photos>div,.td-architect-image,.td-night-image,.td-journal-image,.td-nova-images>div){overflow:hidden;min-width:0;background:#0c5558}.td .td-hero :is(.td-gallery-main,.td-gallery-side,.td-panorama-image,.td-action-visual,.td-welcome-photos>div,.td-architect-image,.td-night-image,.td-journal-image,.td-nova-images>div) img{width:100%;height:100%;object-fit:cover}.td .td-hero :is(.td-hero-copy,.td-gallery-title,.td-panorama-panel,.td-action-copy,.td-welcome-copy,.td-architect-copy,.td-night-copy,.td-journal-copy,.td-nova-heading){min-width:0}.td .td-hero h1{overflow-wrap:anywhere}
.td71 .td-hero-editorial{display:grid;grid-template-columns:1fr 1.1fr .25fr;gap:clamp(20px,3vw,55px);align-items:center}.td71 .td-hero-media{aspect-ratio:4/5}.td71 .td-hero-aside{writing-mode:vertical-rl;display:flex;gap:24px;align-items:center;letter-spacing:.12em;text-transform:uppercase;font-size:12px}.td71 .td-feature-combo{display:grid;grid-template-columns:1.1fr .9fr}.td71 .td-feature-combo>section{min-width:0}.td71 .td-feature-combo .td-two{grid-template-columns:1fr}.td71 .td-feature-combo .td-story-media{aspect-ratio:16/10}
.td72 .td-gallery-hero{display:grid;grid-template-columns:.8fr 1.15fr .48fr;gap:22px;align-items:end}.td72 .td-gallery-title{align-self:center}.td72 .td-gallery-main{height:clamp(360px,48vw,680px)}.td72 .td-gallery-side{height:clamp(240px,30vw,430px);margin-bottom:55px}.td72 .td-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.td72 .td-card:nth-child(even){margin-top:65px}.td72 .td-card-media{aspect-ratio:3/4}
.td73 .td-command-hero{border:1px solid #5a7382}.td73 .td-command-top,.td73 .td-command-foot{display:flex;justify-content:space-between;gap:18px;padding:18px 26px;font-size:12px;font-weight:800;letter-spacing:.12em}.td73 .td-command-top{border-bottom:1px solid #5a7382}.td73 .td-command-foot{border-top:1px solid #5a7382}.td73 .td-command-body{display:grid;grid-template-columns:1.2fr .8fr;align-items:center}.td73 .td-command-body .td-hero-copy{padding:clamp(26px,5vw,80px)}.td73 .td-command-body .td-hero-media{height:100%;min-height:430px;aspect-ratio:auto;border:0}.td73 .td-cards{grid-template-columns:1fr}.td73 .td-card{grid-template-columns:34% 1fr}.td73 .td-card-media{min-height:260px}
.td74 .td-panorama-hero{position:relative;min-height:clamp(490px,55vw,750px);display:flex;align-items:end}.td74 .td-panorama-image{position:absolute;inset:0}.td74 .td-panorama-panel{position:relative;background:#f8fcfc;padding:clamp(28px,4vw,65px);width:min(720px,78%);margin:0 0 -40px 5%;box-shadow:0 22px 50px #143e4624}.td74 .td-hero{padding-bottom:95px!important}.td74 .td-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.td74 .td-card:nth-child(3){grid-column:span 2;display:grid;grid-template-columns:1fr 1fr}.td74 .td-card:nth-child(3) .td-card-media{aspect-ratio:16/8}
.td75 .td-action-hero{display:grid;grid-template-columns:1.25fr .75fr;align-items:stretch}.td75 .td-action-copy{padding:clamp(24px,4vw,70px) clamp(20px,3vw,50px) clamp(24px,4vw,70px) 0;align-self:center}.td75 .td-action-visual{min-height:470px;transform:skew(-3deg);border:10px solid #fff}.td75 .td-action-strip{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:45px}.td75 .td-action-strip span{padding:17px 20px;background:#fff;color:#142c4c;font-weight:900;font-size:13px;letter-spacing:.08em}.td75 .td-cards{grid-template-columns:1fr}.td75 .td-card{grid-template-columns:30% 1fr}.td75 .td-card-media{min-height:220px}
.td76 .td-welcome-hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(25px,5vw,85px);align-items:center}.td76 .td-welcome-photos{display:grid;grid-template-columns:1.15fr .85fr;gap:15px;align-items:center}.td76 .td-welcome-photos>div:first-child{height:480px;border-radius:230px 230px 24px 24px}.td76 .td-welcome-photos>div:last-child{height:290px;border-radius:22px;margin-top:130px}.td76 .td-cards{grid-template-columns:repeat(2,1fr)}.td76 .td-card:nth-child(odd){transform:translateY(-15px)}
.td77 .td-architect-hero{display:grid;grid-template-columns:90px 1.1fr .9fr;gap:clamp(20px,3vw,50px);border-top:3px solid var(--td-ink);padding-top:25px;align-items:start}.td77 .td-architect-label{writing-mode:vertical-rl;font-size:12px;font-weight:800;letter-spacing:.15em}.td77 .td-architect-copy{padding-top:60px}.td77 .td-architect-image{height:580px}.td77 .td-cards{grid-template-columns:1fr;gap:0}.td77 .td-card{grid-template-columns:30% 1fr;border-bottom:1px solid var(--td-line)}.td77 .td-card-media{min-height:230px}
.td78 .td-night-hero{display:grid;grid-template-columns:1.05fr .95fr;grid-template-rows:auto auto;gap:0;align-items:center}.td78 .td-night-image{height:590px;grid-row:1/3;border:1px solid #67828f}.td78 .td-night-copy{padding:clamp(30px,5vw,85px);background:#142b3a;margin-left:-70px;position:relative;box-shadow:0 20px 50px #0005}.td78 .td-night-caption{padding:30px 0 0 40px;letter-spacing:.2em;font-size:12px;color:#a3d9d2}.td78 .td-cards{grid-template-columns:repeat(2,1fr)}.td78 .td-card-copy :is(h3,p){color:#f5f8fa!important}.td78 .td-steps article :is(h3,p),.td78 .td-benefits article :is(h3,p){color:#f5f8fa!important}.td78 .td-contact :is(h2,p){color:#f5f8fa!important}
.td79 .td-journal-masthead{border-top:5px double var(--td-ink);border-bottom:1px solid var(--td-line);display:flex;justify-content:space-between;gap:16px;padding:16px 0;font-size:13px;font-weight:800;letter-spacing:.14em}.td79 .td-journal-feature{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(25px,4vw,70px);padding-top:40px;align-items:center}.td79 .td-journal-image{height:550px}.td79 .td-journal-copy{border-left:1px solid var(--td-line);padding-left:clamp(25px,3vw,55px)}.td79 .td-cards{grid-template-columns:repeat(2,1fr)}.td79 .td-card{display:grid;grid-template-columns:42% 1fr}.td79 .td-card-media{aspect-ratio:1/1}
.td80 .td-nova-hero{display:grid;grid-template-columns:1fr 1fr;gap:clamp(25px,4vw,70px);align-items:center}.td80 .td-nova-images{display:grid;grid-template-columns:1fr 1fr;gap:15px;align-items:end}.td80 .td-nova-images>div:first-child{height:490px;clip-path:polygon(13% 0,100% 0,100% 88%,87% 100%,0 100%,0 13%)}.td80 .td-nova-images>div:last-child{height:300px;margin-bottom:-45px}.td80 .td-cards{grid-template-columns:repeat(3,1fr)}.td80 .td-card:first-child{grid-column:span 2}.td80 .td-card:first-child .td-card-media{aspect-ratio:21/8}
.td .td-feature-combo>section,.td .td-community-combo>section{min-width:0}.td .td-feature-combo .td-wrap,.td .td-community-combo .td-wrap{width:calc(100% - clamp(30px,5vw,90px))}.td78 .td-why,.td78 .td-faq,.td78 .td-area,.td78 .td-process{color:#f5f8fa}.td78 .td-faq details p{color:#e7f3f5}
@media(max-width:1050px){.td71 .td-hero-editorial{grid-template-columns:1fr 1fr}.td71 .td-hero-aside{display:none}.td72 .td-gallery-hero{grid-template-columns:1fr 1fr}.td72 .td-gallery-title{grid-column:1/-1}.td72 .td-gallery-side{margin:0}.td .td-feature-combo{display:block}.td79 .td-journal-feature{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.td71 .td-hero-editorial,.td72 .td-gallery-hero,.td73 .td-command-body,.td75 .td-action-hero,.td76 .td-welcome-hero,.td77 .td-architect-hero,.td78 .td-night-hero,.td79 .td-journal-feature,.td80 .td-nova-hero{display:flex;flex-direction:column;align-items:stretch}.td71 .td-hero-media,.td72 .td-gallery-main,.td73 .td-command-body .td-hero-media,.td75 .td-action-visual,.td76 .td-welcome-photos>div:first-child,.td77 .td-architect-image,.td78 .td-night-image,.td79 .td-journal-image,.td80 .td-nova-images>div:first-child{height:auto;min-height:0;aspect-ratio:16/11}.td72 .td-gallery-side{display:none}.td73 .td-command-top,.td73 .td-command-foot{flex-wrap:wrap}.td74 .td-panorama-panel{width:100%;margin:0 0 -45px;padding:24px}.td74 .td-panorama-hero{min-height:520px}.td75 .td-action-visual{transform:none}.td75 .td-action-strip{grid-template-columns:1fr;margin-top:15px}.td76 .td-welcome-photos>div:last-child,.td80 .td-nova-images>div:last-child{display:none}.td77 .td-architect-label{writing-mode:initial}.td77 .td-architect-copy{padding:0}.td78 .td-night-copy{margin:0;padding:24px}.td78 .td-night-caption{padding:20px}.td79 .td-journal-copy{border-left:0;padding:0}.td79 .td-journal-masthead span{display:none}.td .td-cards,.td72 .td-cards,.td74 .td-cards,.td75 .td-cards,.td76 .td-cards,.td77 .td-cards,.td78 .td-cards,.td79 .td-cards,.td80 .td-cards{grid-template-columns:1fr}.td72 .td-card:nth-child(even),.td76 .td-card:nth-child(odd){margin-top:0;transform:none}.td74 .td-card:nth-child(3),.td80 .td-card:first-child{grid-column:auto}.td74 .td-card:nth-child(3),.td73 .td-card,.td75 .td-card,.td77 .td-card,.td79 .td-card{display:flex;flex-direction:column}.td .td-card-media,.td74 .td-card:nth-child(3) .td-card-media,.td80 .td-card:first-child .td-card-media{aspect-ratio:16/9;min-height:0}.td80 .td-nova-images>div:first-child{clip-path:none}.td .td-hero h1{font-size:clamp(35px,8vw,58px)}}

/* Phase 4.12D-04: Template 78 scoped contrast correction */
.td.td78 .td-services,.td.td78 .td-process,.td.td78 .td-why,.td.td78 .td-story,.td.td78 .td-area,.td.td78 .td-faq,.td.td78 .td-contact{color:#f5f8fa}
.td.td78 .td-services{background:#172936}.td.td78 .td-process{background:#10222e}
.td.td78 .td-why,.td.td78 .td-story,.td.td78 .td-area,.td.td78 .td-faq{background:#172936}
.td.td78 .td-card,.td.td78 .td-card-copy{background:#243c49;color:#f5f8fa}
.td.td78 .td-card-copy h3,.td.td78 .td-card-copy p,.td.td78 .td-card-copy small,.td.td78 .td-card-copy span{color:#f5f8fa!important;opacity:1!important}
.td.td78 .td-card-copy a{color:#a8fff0!important;text-decoration:underline;text-underline-offset:3px}
.td.td78 .td-steps article{background:#294452;color:#f5f8fa;border-top-color:#8ee6d7}
.td.td78 .td-steps article h3,.td.td78 .td-steps article p,.td.td78 .td-benefits article h3,.td.td78 .td-benefits article p{color:#f5f8fa!important;opacity:1!important}
.td.td78 .td-benefits article{border-top-color:#62828f;color:#f5f8fa}
.td.td78 .td-section-head h2,.td.td78 .td-two h2,.td.td78 .td-two p,.td.td78 .td-faq summary,.td.td78 .td-faq details p{color:#f5f8fa!important}
.td.td78 .td-lead{background:#fff;color:#18313d}.td.td78 .td-lead :is(h1,h2,h3,p,label,small){color:#18313d!important}
.td.td78 .td-map,.td.td78 .td-map .demo-map{background:#fff;color:#18313d}

/* Phase 4.12D-05: Aurora visibility and non-overlapping hero, scoped to 78. */
.td.td78 .td-night-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto;gap:clamp(24px,3vw,54px);align-items:center}
.td.td78 .td-night-image{grid-row:auto;min-width:0;width:100%;height:auto;aspect-ratio:5/4;overflow:hidden;border:1px solid #456675;background:#0c5558}
.td.td78 .td-night-image img,.td.td78 .td-night-image .td-photo{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#0c5558}
.td.td78 .td-night-copy{margin:0!important;min-width:0;padding:clamp(25px,3.5vw,55px);box-shadow:none;background:#193444;border:1px solid #3b5b68;position:relative;z-index:1}
.td.td78 .td-night-caption{grid-column:1/-1;padding:0;letter-spacing:.14em}
.td.td78 .td-services .td-card-copy,.td.td78 .td-services .td-card-copy *{color:#f4fbfd!important;opacity:1!important;visibility:visible!important;text-shadow:none!important}
.td.td78 .td-services .td-card-copy a,.td.td78 .td-services .td-card-copy a *{color:#9ef6e7!important;text-decoration:underline}
.td.td78 .td-services .td-card-copy{background:#263f4e!important}
.td.td78 .td-steps article,.td.td78 .td-benefits article{background:#294452!important;color:#f4fbfd!important}
.td.td78 .td-steps article *,.td.td78 .td-benefits article *{color:#f4fbfd!important;opacity:1!important;visibility:visible!important}
.td.td78 .td-why .td-benefits article{border-color:#6d909c!important}
.td.td78 .td-contact .td-lead,.td.td78 .td-contact .td-lead *{color:#18313d!important}
@media(max-width:760px){.td.td78 .td-night-hero{display:flex;flex-direction:column;align-items:stretch;gap:18px}.td.td78 .td-night-image{height:auto;aspect-ratio:16/10}.td.td78 .td-night-copy{margin:0!important;padding:24px}.td.td78 .td-night-caption{padding:0}}/* Phase 4.12E-01. Scoped to .te; no changes to existing template styles. */
.te{--bg:#f8f5ed;--paper:#fff;--ink:#2c2a28;--accent:#a64a28;--line:#d8d0c5;--soft:#f1e8dc;background:var(--bg);color:var(--ink);overflow:hidden;font:16px/1.6 system-ui,sans-serif}
.te *{box-sizing:border-box}.te .te-container{width:min(1520px,calc(100% - clamp(32px,7vw,120px)));margin-inline:auto}.te :is(h1,h2,h3,p){overflow-wrap:break-word}.te h1{font-size:clamp(38px,5vw,82px);line-height:1.08;letter-spacing:-.04em;margin:0 0 22px;color:inherit}.te h2{font-size:clamp(30px,3.2vw,54px);line-height:1.13;letter-spacing:-.035em;margin:0 0 20px;color:inherit}.te h3{font-size:clamp(18px,1.5vw,25px);line-height:1.25;margin:0 0 10px;color:inherit}.te p{font-size:clamp(15px,1.1vw,18px);line-height:1.65;color:inherit}.te .te-kicker{display:block;font-size:12px;letter-spacing:.15em;font-weight:800;text-transform:uppercase;color:var(--accent);margin-bottom:16px}.te .te-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.te .te-actions a{max-width:100%}.te .te-img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.te .te-img.awb-412b-preview-art{object-fit:contain;background:#0b5557}.te .te-hero{padding:clamp(40px,5vw,88px) 0;background:var(--soft)}.te .te-hero-copy{min-width:0}.te .te-hero-copy p{max-width:58ch}.te .te-hero :is(.te81-photo,.te82-image,.te83-circle,.te84-photo,.te85-visual,.te86-panoramic,.te87-photo,.te88-photo,.te89-photo,.te90-photos){min-width:0;overflow:hidden}.te .te-services,.te .te-why,.te .te-story,.te .te-process,.te .te-area,.te .te-faq,.te .te-cta,.te .te-contact{padding:clamp(54px,6vw,100px) 0}.te .te-services{background:var(--paper)}.te .te-section-title{margin-bottom:32px;max-width:900px}.te .te-services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.te .te-service{min-width:0;border:1px solid var(--line);background:var(--paper);overflow:hidden}.te .te-service-photo{height:clamp(200px,21vw,350px);overflow:hidden;background:#0b5557}.te .te-service-info{padding:clamp(18px,2vw,30px)}.te .te-service-info p{margin:0 0 16px}.te .te-service-info a{color:var(--accent);font-weight:750}.te .te-why>.te-container{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,90px)}.te .te-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.te .te-benefits article{border-top:2px solid var(--line);padding-top:18px}.te .te-story{background:var(--soft)}.te .te-story>.te-container,.te .te-area>.te-container,.te .te-contact>.te-container,.te .te-faq>.te-container{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:clamp(30px,5vw,90px)}.te .te-story-image,.te .te-area-image{height:clamp(280px,35vw,540px);overflow:hidden;background:#0b5557}.te .te-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}.te .te-steps article{background:var(--paper);border-top:3px solid var(--accent);padding:24px}.te .te-faq details{padding:17px 0;border-bottom:1px solid var(--line)}.te .te-faq summary{cursor:pointer;font-weight:750}.te .te-faq details p{margin:12px 0 0}.te .te-cta{background:var(--ink);color:var(--paper);text-align:center}.te .te-cta .te-actions{justify-content:center}.te .te-cta .te-kicker{color:inherit}.te .te-contact{background:var(--paper)}.te .te-contact>.te-container{align-items:start}.te .te-map,.te .te-map>.wrap,.te .te-map .demo-map,.te .te-map .demo-map-art,.te .te-map iframe{width:100%!important;max-width:none!important}.te .te-map{padding:0!important}.te .te-map :is(iframe,.demo-map-art){min-height:320px}
/* 81 Folio: ink-blue newspaper, copper accents; giant typographic masthead */
.te81{--bg:#f1ede2;--paper:#fffdf8;--ink:#173b52;--accent:#b45832;--line:#c3c7c6;--soft:#e8e5db}.te81 h1,.te81 h2{font-family:Georgia,serif;font-weight:400}.te81 .te81-meta{display:flex;justify-content:space-between;border-top:4px double currentColor;border-bottom:1px solid;padding:12px 0;font-size:12px;letter-spacing:.12em;font-weight:800}.te81 .te81-title{max-width:1120px;margin:40px auto;text-align:center}.te81 .te81-title .te-actions{justify-content:center}.te81 .te81-title p{margin-inline:auto}.te81 .te81-title h1{font-size:clamp(46px,7vw,118px)}.te81 .te81-photo{height:clamp(300px,43vw,650px)}.te81 .te81-caption{font:italic 16px Georgia,serif;padding:14px 0;text-align:right}.te81 .te-services-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.te81 .te-service-photo{height:220px}.te81 .te-service{border:0;border-top:2px solid var(--ink)}.te81 .te-service-info{padding:20px 0}.te81 .te-steps article{border-top:1px solid var(--ink);background:transparent}
/* 82 Copperline: terracotta and navy, offset gallery, alternating horizontal services */
.te82{--bg:#f5e5d4;--paper:#fff9f1;--ink:#203b4b;--accent:#bc4d2e;--line:#d8ad94;--soft:#f4d4bb}.te82 .te82-head{display:grid;grid-template-columns:70px 1.15fr .85fr;grid-template-rows:minmax(350px,auto) auto;gap:20px;align-items:stretch}.te82 .te82-rail{writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:.22em;font-weight:900;border-right:2px solid var(--accent);padding:14px}.te82 .te82-image{grid-column:2;grid-row:1/3;min-height:550px}.te82 .te82-copy{grid-column:3;grid-row:1;align-self:center;padding:35px 0}.te82 .te82-tag{grid-column:3;grid-row:2;background:var(--accent);color:#fff;padding:22px;font-weight:800}.te82 .te-services-grid{grid-template-columns:1fr}.te82 .te-service{display:grid;grid-template-columns:40% 60%;align-items:stretch}.te82 .te-service-photo{height:300px}.te82 .te-service-info{align-self:center;padding:clamp(22px,4vw,60px)}.te82 .te-service:nth-child(even) .te-service-photo{order:2}
/* 83 Daybreak: apricot and forest green, circular photographic hero, rounded editorial tiles */
.te83{--bg:#fff2dc;--paper:#fffaf0;--ink:#254a3d;--accent:#d06430;--line:#e7cba5;--soft:#f9ddaa}.te83 h1,.te83 h2{font-family:Georgia,serif;font-weight:400}.te83 .te83-head{display:grid;grid-template-columns:1fr 1.15fr;align-items:center;gap:5vw}.te83 .te83-circle{aspect-ratio:1;border-radius:50% 50% 42% 42%;border:14px solid #fff8e9}.te83 .te83-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;border-top:2px solid;padding-top:16px;font-weight:800;font-size:12px;letter-spacing:.08em}.te83 .te-service{border-radius:24px;overflow:hidden}.te83 .te-service-photo{border-radius:24px 24px 100px 24px}.te83 .te-steps article{border-radius:80px 80px 18px 18px;padding-top:45px}
/* 84 Switchboard: electric cobalt, lime and charcoal; app-like command desk */
.te84{--bg:#e6ebff;--paper:#fff;--ink:#18255a;--accent:#2749e8;--line:#b9c5f2;--soft:#cbd5ff}.te84 .te84-head{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr auto;border:3px solid var(--ink);background:var(--paper)}.te84 .te84-banner{grid-column:1/-1;background:var(--ink);color:#e5ff70;padding:13px 25px;font-weight:900;letter-spacing:.1em}.te84 .te84-copy{padding:clamp(25px,4vw,75px);align-self:center}.te84 .te84-photo{min-height:450px}.te84 .te84-status{grid-column:1/-1;display:flex;justify-content:space-between;background:#e5ff70;color:var(--ink);padding:15px 25px;font-weight:800}.te84 .te-service{display:grid;grid-template-columns:36% 64%;border:2px solid var(--ink)}.te84 .te-service-photo{height:230px}.te84 .te-services-grid{gap:14px}.te84 .te-steps article{background:#e5ff70;color:var(--ink);border:2px solid var(--ink)}.te84 .te-cta{background:var(--accent)}
/* 85 Orchard: olive, plum, cream; warm dual-photo collage and irregular service tiles */
.te85{--bg:#f4f0df;--paper:#fffdf6;--ink:#47354e;--accent:#7a632a;--line:#d9cfb5;--soft:#e6e8cf}.te85 h1,.te85 h2{font-family:Georgia,serif;font-weight:400}.te85 .te85-head{display:grid;grid-template-columns:.85fr 1.15fr;gap:40px;align-items:center}.te85 .te85-visual{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:14px}.te85 .te85-visual>div:first-child{height:550px;border-radius:240px 240px 20px 20px;overflow:hidden}.te85 .te85-visual>div:last-child{height:330px;border-radius:180px 180px 12px 12px;overflow:hidden}.te85 .te85-footer{grid-column:1/-1;text-align:center;border-top:1px solid;padding-top:14px;letter-spacing:.12em;font-size:12px;font-weight:800}.te85 .te-services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.te85 .te-service:nth-child(1){grid-column:span 2;display:grid;grid-template-columns:1fr 1fr}.te85 .te-service-photo{height:290px}.te85 .te-service{border-radius:18px}
/* 86 Tidal: ultramarine, aqua, ivory; full-bleed panoramic with detached text block */
.te86{--bg:#e6f7f7;--paper:#fff;--ink:#12354d;--accent:#087d9a;--line:#a5d9dc;--soft:#c5ebed}.te86 .te-hero{padding-top:20px}.te86 .te86-head{position:relative;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:clamp(310px,42vw,650px) auto}.te86 .te86-panoramic{grid-column:1/-1;grid-row:1}.te86 .te86-copy{grid-column:1;grid-row:2;background:#fff;padding:clamp(30px,5vw,75px);margin-top:-110px;z-index:1;border-top:9px solid var(--accent)}.te86 .te86-side{grid-column:2;grid-row:2;padding:35px;align-self:end;text-align:right;letter-spacing:.13em;font-weight:800}.te86 .te86-side span{display:block;font-size:25px;letter-spacing:0}.te86 .te-services-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.te86 .te-service-photo{height:220px}.te86 .te-service{border:0;background:#e5f5f5}.te86 .te-service-info{padding:18px}
/* 87 Atelier: black, lilac, cream; luxury typography with minimal image index */
.te87{--bg:#f2edfa;--paper:#faf7ff;--ink:#272033;--accent:#7756a6;--line:#d4c9e2;--soft:#e5dcf3}.te87 h1,.te87 h2{font-family:Georgia,serif;font-weight:400}.te87 .te87-wordmark{font:800 clamp(26px,4vw,70px)/1 Georgia,serif;letter-spacing:-.05em;text-transform:uppercase;border-bottom:1px solid;padding-bottom:15px}.te87 .te87-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:5vw;padding:35px 0}.te87 .te87-copy{align-self:center}.te87 .te87-photo{height:clamp(350px,48vw,720px)}.te87 .te87-foot{font-size:12px;letter-spacing:.2em;text-align:right}.te87 .te-services-grid{grid-template-columns:1fr;gap:0}.te87 .te-service{display:grid;grid-template-columns:30% 70%;border:0;border-top:1px solid var(--ink);background:transparent}.te87 .te-service-photo{height:190px}.te87 .te-service-info{display:grid;grid-template-columns:1fr 1.5fr auto;align-items:center;gap:20px}.te87 .te-service-info :is(h3,p){margin:0}
/* 88 Playbook: punchy coral, indigo, mint; brutalist rule-based interface */
.te88{--bg:#f9f1e9;--paper:#fff;--ink:#252552;--accent:#ed5d4c;--line:#252552;--soft:#b8f2dc}.te88 .te88-head{border:4px solid var(--ink);box-shadow:15px 15px 0 var(--accent);background:var(--paper)}.te88 .te88-top,.te88 .te88-bottom{display:flex;justify-content:space-between;gap:20px;padding:15px 24px;background:var(--soft);font-weight:900;letter-spacing:.09em;font-size:12px}.te88 .te88-main{display:grid;grid-template-columns:1.1fr .9fr}.te88 .te88-copy{padding:clamp(24px,5vw,75px);align-self:center}.te88 .te88-photo{min-height:450px;border-left:4px solid var(--ink)}.te88 h1{font-weight:900;text-transform:uppercase}.te88 .te-service{border:3px solid var(--ink);box-shadow:7px 7px 0 var(--accent)}.te88 .te-service-photo{height:220px}.te88 .te-steps article{background:var(--soft);border:3px solid var(--ink)}.te88 .te-cta{background:var(--accent);color:#fff}
/* 89 Lantern: maroon, gold, pale peach; cinematic framed portrait and side story */
.te89{--bg:#fff4e9;--paper:#fffcf8;--ink:#522b39;--accent:#b27a26;--line:#e2c8ae;--soft:#f2dfd4}.te89 h1,.te89 h2{font-family:Georgia,serif;font-weight:400}.te89 .te89-head{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:auto auto;gap:30px;align-items:center}.te89 .te89-photo{height:clamp(420px,48vw,690px);border:15px solid #fff8f0;box-shadow:0 15px 45px #522b3920;grid-row:1/3}.te89 .te89-copy{align-self:end}.te89 .te89-stamp{border-top:1px solid;padding-top:20px;align-self:start;font:italic 22px Georgia,serif}.te89 .te-service{border:0;border-bottom:2px solid var(--line);background:transparent}.te89 .te-service-photo{height:240px}.te89 .te-services-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.te89 .te-service-info{padding:18px 0}
/* 90 Altitude: charcoal, icy blue, bright orange; asymmetric technical photography */
.te90{--bg:#e8eff3;--paper:#fff;--ink:#1c303c;--accent:#e56b2f;--line:#b7cbd6;--soft:#d2e1ea}.te90 .te90-head{display:grid;grid-template-columns:.8fr 1.2fr;gap:25px;align-items:center}.te90 .te90-overline{grid-column:1/-1;letter-spacing:.22em;font-weight:900;font-size:13px;border-bottom:3px solid;padding-bottom:16px}.te90 .te90-photos{display:grid;grid-template-columns:1.5fr .75fr;gap:12px;align-items:end}.te90 .te90-photos>div:first-child{height:550px}.te90 .te90-photos>div:last-child{height:350px}.te90 .te90-line{grid-column:1/-1;text-align:right;letter-spacing:.12em;font-weight:800;font-size:12px}.te90 .te-services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.te90 .te-service:first-child{grid-column:span 2;display:grid;grid-template-columns:1fr 1fr}.te90 .te-service-photo{height:280px}.te90 .te-service{border-top:5px solid var(--accent)}
/* Shared accessibility and mobile constraints */
.te :is(a,summary):focus-visible{outline:3px solid var(--accent);outline-offset:3px}.te .te-service-info :is(h3,p),.te .te-benefits :is(h3,p),.te .te-steps :is(h3,p){color:var(--ink)}.te .te-cta :is(h2,p){color:inherit}.te .te-contact-lead .lead{color:#182b35;background:#fff}.te .te-contact-lead .lead :is(h3,p,small){color:#182b35}
@media(max-width:1050px){.te :is(.te81 .te-services-grid,.te85 .te-services-grid,.te86 .te-services-grid,.te89 .te-services-grid){grid-template-columns:repeat(2,minmax(0,1fr))}.te87 .te-service-info{display:block}.te82 .te82-head{grid-template-columns:40px 1fr 1fr}.te90 .te90-photos>div:first-child{height:400px}}
@media(max-width:740px){.te .te-container{width:calc(100% - 30px)}.te .te-hero{padding:36px 0}.te h1{font-size:clamp(34px,9vw,56px)}.te h2{font-size:clamp(27px,7vw,39px)}.te :is(.te-services-grid,.te-why>.te-container,.te-story>.te-container,.te-area>.te-container,.te-contact>.te-container,.te-faq>.te-container,.te-steps,.te-benefits){grid-template-columns:1fr}.te .te-story-image,.te .te-area-image{height:300px}.te .te-service-photo{height:220px}.te :is(.te81 .te-services-grid,.te85 .te-services-grid,.te86 .te-services-grid,.te89 .te-services-grid,.te90 .te-services-grid){grid-template-columns:1fr}.te :is(.te82 .te-service,.te84 .te-service,.te85 .te-service:nth-child(1),.te87 .te-service,.te90 .te-service:first-child){display:block;grid-column:auto}.te82 .te-service:nth-child(even) .te-service-photo{order:0}.te81 .te81-meta{gap:12px;flex-wrap:wrap}.te81 .te81-title{margin:25px auto}.te81 .te81-photo{height:260px}.te82 .te82-head{display:flex;flex-direction:column}.te82 .te82-rail{writing-mode:initial;transform:none;border:0;border-bottom:2px solid;padding:8px}.te82 .te82-image{min-height:0;height:300px}.te82 .te82-copy{padding:12px}.te83 .te83-head{grid-template-columns:1fr}.te83 .te83-circle{max-height:360px}.te83 .te83-bottom{flex-wrap:wrap}.te84 .te84-head{display:flex;flex-direction:column}.te84 .te84-photo{min-height:0;height:280px}.te84 .te84-copy{padding:22px}.te85 .te85-head{grid-template-columns:1fr}.te85 .te85-visual>div:first-child{height:340px}.te85 .te85-visual>div:last-child{height:220px}.te86 .te86-head{display:flex;flex-direction:column}.te86 .te86-panoramic{height:280px}.te86 .te86-copy{margin:0}.te86 .te86-side{padding:12px}.te87 .te87-grid{grid-template-columns:1fr}.te87 .te87-photo{height:300px}.te88 .te88-main{grid-template-columns:1fr}.te88 .te88-photo{min-height:0;height:270px;border-left:0;border-top:4px solid}.te88 .te88-top,.te88 .te88-bottom{flex-wrap:wrap}.te89 .te89-head{grid-template-columns:1fr}.te89 .te89-photo{grid-row:auto;height:350px}.te90 .te90-head{grid-template-columns:1fr}.te90 .te90-photos>div:first-child{height:300px}.te90 .te90-photos>div:last-child{height:220px}.te .te-actions{gap:10px}.te .te-actions a{white-space:normal}}

/* Phase 4.12E-02 visual review: balanced grids, image spacing and readable cards. */
.te81 .te-services-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start}
.te81 .te-service{height:auto;align-self:start}
.te81 .te-service-photo{height:clamp(175px,15vw,245px)}
.te83 .te83-head{gap:clamp(24px,4vw,65px)}
.te83 .te83-circle{overflow:hidden;min-width:0}
.te83 .te83-copy{min-width:0}
.te84 .te-services-grid{align-items:stretch}
.te84 .te-service{grid-template-columns:minmax(0,38%) minmax(0,62%)}
.te84 .te-service-info{min-width:0;padding:clamp(14px,1.6vw,26px)}
.te84 .te-service-photo{height:100%;min-height:190px}
.te85 .te-services-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.te85 .te-service:nth-child(1){grid-column:auto;display:block}
.te85 .te-service{display:flex;flex-direction:column;min-width:0}
.te85 .te-service-photo{height:clamp(210px,23vw,320px);flex:none}
.te85 .te-service-info{flex:1}
/* Atelier 87: consistent photographic rhythm and generous breathing room. */
.te87 .te87-grid{gap:clamp(30px,5vw,90px);padding:clamp(28px,4vw,64px) 0;align-items:center}
.te87 .te87-photo{height:clamp(340px,40vw,610px);min-width:0}
.te87 .te-story>.te-container,.te87 .te-area>.te-container{gap:clamp(36px,6vw,110px);align-items:center}
.te87 .te-story-image,.te87 .te-area-image{height:clamp(300px,32vw,490px);min-width:0}
.te87 .te-services-grid{gap:0}
.te87 .te-service{grid-template-columns:minmax(190px,32%) minmax(0,68%);align-items:center;gap:clamp(18px,3vw,46px);padding:clamp(22px,3vw,42px) 0;overflow:visible}
.te87 .te-service-photo{height:clamp(175px,20vw,270px);min-width:0;overflow:hidden}
.te87 .te-service-info{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr) auto;gap:clamp(15px,2vw,32px);min-width:0;padding:12px 0;align-items:center}
.te87 .te-service-info p{max-width:60ch}
.te88 .te-services-grid{gap:clamp(20px,3vw,42px)}
.te88 .te-service{min-width:0}
.te88 .te-service-info{padding:clamp(20px,2.5vw,34px)}
.te88 .te-service-photo{height:clamp(200px,22vw,310px)}
@media(max-width:1050px){
 .te81 .te-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .te87 .te-service-info{display:block}
 .te87 .te-service-info :is(h3,p){margin-bottom:12px}
}
@media(max-width:740px){
 .te81 .te-services-grid,.te85 .te-services-grid{grid-template-columns:1fr}
 .te84 .te-service,.te87 .te-service{display:block}
 .te84 .te-service-photo,.te87 .te-service-photo{height:230px;min-height:0}
 .te87 .te87-grid{padding:24px 0;gap:26px}
 .te87 .te87-photo{height:300px}
 .te87 .te-story-image,.te87 .te-area-image{height:280px}
 .te87 .te-service{padding:20px 0}
 .te87 .te-service-info{padding:18px 0 0}
 .te88 .te-service-photo{height:230px}
}

.tf{--bg:#fff;--ink:#1b2831;--accent:#d34f35;--panel:#f2f0e9;--dark:#172e38;--line:#b9c0c3;background:var(--bg);color:var(--ink);font-family:system-ui,Arial,sans-serif;font-size:16px;line-height:1.55}
.tf *{box-sizing:border-box}.tf .tf-wrap{width:min(1160px,calc(100% - 44px));margin:auto}.tf h1,.tf h2,.tf h3{color:inherit;line-height:1.12;margin:0 0 .55em;overflow-wrap:break-word}.tf h1{font-size:clamp(2.3rem,5vw,5.3rem);letter-spacing:-.045em}.tf h2{font-size:clamp(1.75rem,3vw,3rem)}.tf p{margin:0 0 1.2em;max-width:65ch}.tf .tf-eyebrow{display:block;font-size:.75rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--accent);margin-bottom:1.2rem}.tf .tf-img{display:block;width:100%;height:100%;object-fit:cover}.tf .tf-hero-image,.tf .tf-story-photo,.tf .tf-area-photo{overflow:hidden;min-height:270px}.tf .tf-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.tf .tf-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:42px}.tf .tf-hero{background:var(--panel);padding:64px 0}.tf .tf-hero .tf-headline{min-width:0}.tf .tf-hero-image{height:390px}.tf .tf-hero-image .tf-img{object-fit:cover}.tf .tf-services,.tf .tf-process,.tf .tf-why,.tf .tf-story,.tf .tf-area,.tf .tf-faq,.tf .tf-contact{padding:76px 0}.tf .tf-section-title{margin-bottom:28px}.tf .tf-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.tf .tf-service{min-width:0;overflow:hidden;background:#fff;border:1px solid var(--line);display:grid;grid-template-columns:43% 1fr}.tf .tf-service-photo{height:230px;overflow:hidden}.tf .tf-service-copy{padding:22px}.tf .tf-service h3{font-size:1.25rem}.tf .tf-service a{color:var(--accent);font-weight:800;text-decoration:underline;text-underline-offset:3px}.tf .tf-why{background:var(--panel)}.tf .tf-why>.tf-wrap,.tf .tf-story>.tf-wrap,.tf .tf-area>.tf-wrap,.tf .tf-faq>.tf-wrap,.tf .tf-contact>.tf-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:center}.tf .tf-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.tf .tf-benefits article{padding:16px 0;border-top:1px solid var(--line)}.tf .tf-benefits h3{font-size:1.1rem}.tf .tf-story-photo,.tf .tf-area-photo{height:340px}.tf .tf-area{background:var(--panel)}.tf .tf-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tf .tf-steps article{padding:22px;border-top:3px solid var(--accent);background:var(--panel)}.tf .tf-steps h3{font-size:1.2rem}.tf .tf-faq details{padding:15px 0;border-bottom:1px solid var(--line)}.tf .tf-faq summary{cursor:pointer;font-weight:750}.tf .tf-faq details p{padding-top:10px}.tf .tf-cta{padding:65px 0;background:var(--dark);color:#fff;text-align:center}.tf .tf-cta .tf-wrap{display:flex;flex-direction:column;align-items:center}.tf .tf-cta .tf-eyebrow{color:#f4bb75}.tf .tf-contact{background:#fff}.tf .tf-map{padding:32px 0;background:#fff}.tf .tf-map .tf-wrap>div{width:100%;max-width:none}.tf .tf-map iframe{width:100%;min-height:320px}.tf .tf-map h2{font-size:1.6rem}.tf .tf-headline p{font-size:1.08rem}.tf .tf-hero [class*="-hero"]{min-width:0}
.tf91{--bg:#fffaf0;--ink:#26364c;--accent:#d35b20;--panel:#f3dfb4;--dark:#283d51;--line:color-mix(in srgb,#26364c 22%,transparent)}
.tf92{--bg:#11131e;--ink:#f5f4ff;--accent:#b59aff;--panel:#20243b;--dark:#161728;--line:color-mix(in srgb,#f5f4ff 22%,transparent)}
.tf93{--bg:#fff9f2;--ink:#5a2d27;--accent:#bb553d;--panel:#f1e1d0;--dark:#62372e;--line:color-mix(in srgb,#5a2d27 22%,transparent)}
.tf94{--bg:#ffffff;--ink:#161616;--accent:#e33c27;--panel:#f2f2ed;--dark:#111111;--line:color-mix(in srgb,#161616 22%,transparent)}
.tf95{--bg:#f4fff7;--ink:#124d51;--accent:#e86c22;--panel:#d0f3e9;--dark:#16444d;--line:color-mix(in srgb,#124d51 22%,transparent)}
.tf96{--bg:#f9f5e9;--ink:#244938;--accent:#9c582d;--panel:#e5eadb;--dark:#1b3a2e;--line:color-mix(in srgb,#244938 22%,transparent)}
.tf97{--bg:#fff4ff;--ink:#4d185b;--accent:#ee3484;--panel:#ffdf59;--dark:#4b195a;--line:color-mix(in srgb,#4d185b 22%,transparent)}
.tf98{--bg:#f7faf9;--ink:#183e37;--accent:#e07b38;--panel:#e3efec;--dark:#183e37;--line:color-mix(in srgb,#183e37 22%,transparent)}
.tf99{--bg:#fffaf2;--ink:#5a2138;--accent:#c49a56;--panel:#f0e4d2;--dark:#461d2f;--line:color-mix(in srgb,#5a2138 22%,transparent)}
.tf100{--bg:#f3f5ff;--ink:#222d62;--accent:#ff5c5c;--panel:#dce3ff;--dark:#1a224b;--line:color-mix(in srgb,#222d62 22%,transparent)}

.tf92 .tf-hero,.tf92 .tf-services,.tf92 .tf-why{background:var(--bg);color:var(--ink)}.tf92 .tf-services .tf-service,.tf92 .tf-benefits article{background:var(--panel);color:#fff}.tf92 .tf-services .tf-service a{color:#d8c5ff}.tf92 .tf-hero .tf-eyebrow{color:#d8c5ff}.tf92 .tf-hero .tf-headline{color:#fff}.tf92 .tf-process{background:#e9e9f3;color:#151626}.tf92 .tf-faq,.tf92 .tf-contact{background:#f6f5fb;color:#151626}
.tf91-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:26px;align-items:center;position:relative}.tf91-ribbon{grid-column:1/-1;border-top:3px double currentColor;border-bottom:1px solid currentColor;padding:12px 0;letter-spacing:.18em;font-size:.8rem;font-weight:800}.tf91-side{grid-column:1/-1;text-align:right;font-size:.8rem;letter-spacing:.12em}.tf91 .tf-service{display:flex;flex-direction:column}.tf91 .tf-service-photo{height:230px}.tf91 .tf-service-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.tf91 .tf-service-copy{padding:18px}.tf91 .tf-service h3{font-family:Georgia,serif}
.tf92-hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px}.tf92-head{grid-column:1/-1;display:flex;justify-content:space-between;border-bottom:1px solid #777;padding-bottom:12px;font-size:.8rem;letter-spacing:.15em}.tf92-screen{border:8px solid #444765;padding:12px;background:#262a43}.tf92-status{padding:12px 0 0;color:#b7ffa4;font-size:.7rem;letter-spacing:.15em}.tf92 .tf-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.tf93-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:35px;align-items:center}.tf93-photo{grid-row:span 2}.tf93-photo .tf-hero-image{height:500px;border-radius:45% 45% 12px 12px}.tf93-stamp{border-top:1px solid var(--ink);padding-top:15px;letter-spacing:.12em}.tf93 .tf-service{border-radius:25px 4px 25px 4px}
.tf94-hero{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:end}.tf94-mark{grid-column:1/-1;font-size:clamp(1.5rem,4vw,4rem);font-weight:1000;letter-spacing:-.07em;border-bottom:8px solid var(--accent)}.tf94 .tf-service{border:0;border-bottom:3px solid #111}.tf94 .tf-service-grid{grid-template-columns:1fr}
.tf95-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:center}.tf95-image .tf-hero-image{height:500px;border-radius:150px 150px 10px 10px}.tf95-badge{grid-column:1/-1;text-align:center;font-weight:800;letter-spacing:.15em}.tf95 .tf-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tf95 .tf-service{display:block;border-radius:20px}.tf95 .tf-service-photo{height:210px}
.tf96-hero{display:grid;grid-template-columns:1fr 1fr;gap:25px}.tf96-issue,.tf96-footer{grid-column:1/-1;border-top:1px solid currentColor;padding:12px 0;letter-spacing:.18em;font-size:.75rem;font-weight:800}.tf96 .tf-service-grid{grid-template-columns:1fr}.tf96 .tf-service{grid-template-columns:32% 1fr;border-left:6px solid var(--accent)}
.tf97-hero{display:grid;grid-template-columns:1fr 1fr;gap:20px}.tf97-title{background:var(--panel);padding:35px}.tf97-image .tf-hero-image{height:480px}.tf97-tag{grid-column:1/-1;font-size:clamp(2rem,6vw,5rem);font-weight:1000;letter-spacing:-.07em}.tf97 .tf-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tf97 .tf-service{border:3px solid var(--ink)}
.tf98-hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:25px;align-items:center}.tf98-image .tf-hero-image{border-radius:50% 50% 5px 5px;height:500px}.tf98-line{grid-column:1/-1;border-top:1px solid currentColor;padding-top:16px;letter-spacing:.15em}.tf98 .tf-service{border:0;border-top:1px solid var(--ink);background:transparent}
.tf99-hero{display:grid;gap:20px}.tf99-crown{text-align:center;font-family:Georgia,serif;letter-spacing:.3em;border-bottom:1px solid currentColor;padding-bottom:15px}.tf99-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.tf99-image .tf-hero-image{border:15px solid #fff;box-shadow:0 20px 50px #0002}.tf99 .tf-service-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.tf99 .tf-service{display:block}.tf99 .tf-service-photo{height:200px}
.tf100-hero{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.tf100-label{grid-column:1/-1;border-bottom:2px solid var(--accent);padding-bottom:12px;letter-spacing:.2em;font-size:.8rem}.tf100-corner{grid-column:1/-1;text-align:right;font-weight:800}.tf100 .tf-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tf100 .tf-service{display:block;border-radius:0 28px 0 28px}.tf100 .tf-service-photo{height:230px}
@media(max-width:900px){.tf91 .tf-service-grid,.tf99 .tf-service-grid,.tf95 .tf-service-grid,.tf100 .tf-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.tf .tf-wrap{width:calc(100% - 30px)}.tf .tf-hero,.tf .tf-services,.tf .tf-process,.tf .tf-why,.tf .tf-story,.tf .tf-area,.tf .tf-faq,.tf .tf-contact{padding:42px 0}.tf .tf-hero .tf-hero-image{height:270px}.tf .tf-service-grid,.tf91 .tf-service-grid,.tf95 .tf-service-grid,.tf99 .tf-service-grid,.tf100 .tf-service-grid,.tf .tf-steps,.tf .tf-why>.tf-wrap,.tf .tf-story>.tf-wrap,.tf .tf-area>.tf-wrap,.tf .tf-faq>.tf-wrap,.tf .tf-contact>.tf-wrap,.tf91-hero,.tf92-hero,.tf93-hero,.tf94-hero,.tf95-hero,.tf96-hero,.tf97-hero,.tf98-hero,.tf99-grid,.tf100-hero{grid-template-columns:1fr}.tf .tf-service{grid-template-columns:38% 1fr}.tf91 .tf-service,.tf95 .tf-service,.tf99 .tf-service,.tf100 .tf-service{display:grid;grid-template-columns:38% 1fr}.tf .tf-service-photo,.tf91 .tf-service-photo,.tf95 .tf-service-photo,.tf99 .tf-service-photo,.tf100 .tf-service-photo{height:190px}.tf .tf-service-copy{padding:15px}.tf .tf-benefits{grid-template-columns:1fr 1fr}.tf93-photo{grid-row:auto}.tf91-ribbon,.tf92-head,.tf94-mark,.tf95-badge,.tf96-issue,.tf96-footer,.tf97-tag,.tf98-line,.tf100-label,.tf100-corner{grid-column:1}.tf .tf-story-photo,.tf .tf-area-photo{height:260px}.tf h1{font-size:clamp(2.1rem,8vw,3.5rem)}.tf .tf-hero-image .tf-img{object-fit:cover}}
@media(max-width:430px){.tf .tf-service,.tf91 .tf-service,.tf95 .tf-service,.tf99 .tf-service,.tf100 .tf-service{display:block}.tf .tf-service-photo{height:190px}.tf .tf-benefits{grid-template-columns:1fr}}


/* Phase 4.12F-02: safe image presentation, consistent rhythm and readable panels (91-100 only). */
.tf .tf-hero-image,.tf .tf-story-photo,.tf .tf-area-photo,.tf .tf-service-photo{background:#0c585b;isolation:isolate}
.tf .tf-hero-image .tf-img,.tf .tf-story-photo .tf-img,.tf .tf-area-photo .tf-img,.tf .tf-service-photo .tf-img{object-fit:contain!important;object-position:center!important;max-width:100%;max-height:100%}
.tf .tf-hero-image{height:clamp(260px,31vw,410px);min-height:0}
.tf .tf-story-photo,.tf .tf-area-photo{height:clamp(240px,28vw,350px);min-height:0}
.tf .tf-service-photo{height:clamp(170px,19vw,245px);min-height:0}
.tf .tf-service{align-items:stretch;min-height:0}
.tf .tf-service-copy{min-width:0;overflow-wrap:anywhere}
.tf .tf-service-grid{gap:clamp(16px,2.5vw,26px)}
.tf .tf-services,.tf .tf-process,.tf .tf-why,.tf .tf-story,.tf .tf-area,.tf .tf-faq,.tf .tf-contact{padding-block:clamp(48px,6vw,82px)}
.tf .tf-hero{padding-block:clamp(48px,6vw,78px)}
.tf .tf-headline h1{max-width:16ch}
.tf .tf-service h3{font-size:clamp(1.05rem,1.35vw,1.3rem)}
.tf .tf-service-copy p{line-height:1.6}
.tf91 .tf-service-grid,.tf95 .tf-service-grid,.tf99 .tf-service-grid,.tf100 .tf-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.tf91 .tf-service,.tf95 .tf-service,.tf99 .tf-service,.tf100 .tf-service{display:grid;grid-template-columns:minmax(0,43%) minmax(0,1fr);border-radius:12px}
.tf91 .tf-service-photo,.tf95 .tf-service-photo,.tf99 .tf-service-photo,.tf100 .tf-service-photo{height:100%;min-height:215px}
.tf .tf-map{width:100%;padding:38px 0 0;background:#fff;color:#172e38}
.tf .tf-map>.tf-wrap{width:100%;max-width:none;margin:0}
.tf .tf-map>.tf-wrap>h2{padding-inline:clamp(20px,4vw,70px)}
.tf .tf-map>.tf-wrap>div{width:100%!important;max-width:none!important;margin:0!important}
.tf .tf-map iframe{display:block;width:100%!important;max-width:none!important;min-height:380px;border:0}
.tf .tf-map [class*="map"]{max-width:none}
/* Circuit: override inherited dark panels with accessible foregrounds. */
.tf92 .tf-service,.tf92 .tf-services .tf-service{background:#282c47;color:#fff;border-color:#656c91}
.tf92 .tf-service h3,.tf92 .tf-service p,.tf92 .tf-service-copy,.tf92 .tf-benefits h3,.tf92 .tf-benefits p{color:#fff!important;opacity:1!important}
.tf92 .tf-service a{color:#e3d4ff!important}
.tf92 .tf-steps article{background:#fff;color:#151626;border-color:#8971d4}
.tf92 .tf-steps h3,.tf92 .tf-steps p{color:#151626!important}
.tf92 .tf-why,.tf92 .tf-why .tf-benefits article{background:#171a2b;color:#fff}
.tf92 .tf-why h2,.tf92 .tf-why p,.tf92 .tf-why h3{color:#fff!important}
.tf92 .tf-why .tf-eyebrow{color:#d8c5ff}
.tf92 .tf-map,.tf92 .tf-map *{color:#172e38}
/* The arch should frame an entire image, not crop its embedded lettering. */
.tf93-photo .tf-hero-image,.tf95-image .tf-hero-image,.tf98-image .tf-hero-image{height:clamp(270px,32vw,440px);border-radius:24px}
.tf .tf-hero-image .tf-img{border-radius:inherit}
@media(max-width:900px){.tf91 .tf-service-grid,.tf95 .tf-service-grid,.tf99 .tf-service-grid,.tf100 .tf-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tf91 .tf-service,.tf95 .tf-service,.tf99 .tf-service,.tf100 .tf-service{display:block}.tf91 .tf-service-photo,.tf95 .tf-service-photo,.tf99 .tf-service-photo,.tf100 .tf-service-photo{height:210px;min-height:0}}
@media(max-width:700px){.tf .tf-service-grid,.tf91 .tf-service-grid,.tf95 .tf-service-grid,.tf99 .tf-service-grid,.tf100 .tf-service-grid{grid-template-columns:1fr}.tf .tf-service,.tf91 .tf-service,.tf95 .tf-service,.tf99 .tf-service,.tf100 .tf-service{display:grid;grid-template-columns:38% minmax(0,1fr)}.tf .tf-service-photo,.tf91 .tf-service-photo,.tf95 .tf-service-photo,.tf99 .tf-service-photo,.tf100 .tf-service-photo{height:100%;min-height:180px}.tf .tf-hero-image{height:260px}.tf .tf-map iframe{min-height:300px}.tf .tf-map{padding-top:28px}}
@media(max-width:430px){.tf .tf-service,.tf91 .tf-service,.tf95 .tf-service,.tf99 .tf-service,.tf100 .tf-service{display:block}.tf .tf-service-photo,.tf91 .tf-service-photo,.tf95 .tf-service-photo,.tf99 .tf-service-photo,.tf100 .tf-service-photo{height:210px;min-height:0}}


/* Phase 4.12F-03: Circuit (92) only — final high-specificity contrast safeguards.
   Override global builder/theme text colors without changing other templates. */
.tf.tf92 .tf-services .tf-service,
.tf.tf92 .tf-services .tf-service-copy,
.tf.tf92 .tf-services .tf-service-copy h3,
.tf.tf92 .tf-services .tf-service-copy p {
  background-color:#282c47!important;
  color:#f8f7ff!important;
  -webkit-text-fill-color:#f8f7ff!important;
  opacity:1!important;
}
.tf.tf92 .tf-services .tf-service-copy a,
.tf.tf92 .tf-services .tf-service-copy a:visited {
  color:#e6d7ff!important;
  -webkit-text-fill-color:#e6d7ff!important;
  text-decoration:underline!important;
}
.tf.tf92 .tf-why .tf-benefits article,
.tf.tf92 .tf-why .tf-benefits article h3,
.tf.tf92 .tf-why .tf-benefits article p {
  color:#f8f7ff!important;
  -webkit-text-fill-color:#f8f7ff!important;
  opacity:1!important;
}
.tf.tf92 .tf-why .tf-benefits article {background-color:#252940!important;border-top-color:#646b8e!important;padding:18px!important}
.tf.tf92 .tf-why .tf-benefits article h3{font-weight:750!important}
.tf.tf92 .tf-process .tf-steps article,
.tf.tf92 .tf-process .tf-steps article h3,
.tf.tf92 .tf-process .tf-steps article p {
  color:#151626!important;
  -webkit-text-fill-color:#151626!important;
  opacity:1!important;
}
.tf.tf92 .tf-process .tf-steps article{background-color:#fff!important}


/* Phase 4.6: Atlas (01) only — readability and balanced page rhythm. */
/* Phase 4.6A: dark-section contrast fix, scoped to Atlas only. */
.tic1 .tic1-why,.tic1 .tic1-why>.wrap{background:var(--s,#102b39)!important;color:#f8fafc!important}
.tic1 .tic1-why h2,.tic1 .tic1-why h3,.tic1 .tic1-why h4,.tic1 .tic1-why p,.tic1 .tic1-why span,.tic1 .tic1-why .tic-benefit-story,.tic1 .tic1-why .tic-benefit-story h3,.tic1 .tic1-why .tic-benefit-story p{color:#f8fafc!important}
.tic1 .tic1-why .tic-benefit-story{background:transparent!important;border-top:1px solid rgba(255,255,255,.24)!important}
.tic1 .tic1-why .tic-benefit-story p{color:#e2e8f0!important}
.tic1 .tic1-why .eyebrow{color:#c4f7ed!important}

.tic1{--atlas-space:clamp(52px,6vw,86px)}
.tic1>section{padding-block:var(--atlas-space)}
.tic1 .tic1-hero{min-height:clamp(550px,69vh,760px);padding:75px 0}
.tic1 .tic1-hero .wrap{width:min(1120px,calc(100% - 48px))}
.tic1 .tic1-hero .tic-hero-copy{max-width:690px}
.tic1 .tic1-hero h1{font-size:clamp(38px,4.4vw,66px);line-height:1.09;letter-spacing:-.038em;max-width:680px;text-wrap:balance}
.tic1 .tic1-hero .tic-hero-copy p{font-size:clamp(16px,1.5vw,19px);line-height:1.65;max-width:610px}
.tic1 .tic1-shade{background:linear-gradient(90deg,rgba(7,17,29,.94),rgba(7,17,29,.82) 48%,rgba(7,17,29,.3) 100%)}
.tic1 .tic1-trust{padding:0!important;margin-top:-30px}
.tic1 .tic1-trust>.wrap{border-radius:14px;overflow:hidden}
.tic1 .tic1-trust .tic-trust-box{padding:22px 18px}
.tic1 .tic1-services header{margin-bottom:28px}
.tic1 .tic1-service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:25px}
.tic1 .tic1-service,.tic1 .tic1-service:nth-child(even){display:flex;flex-direction:column;min-height:0;border:1px solid #e0e6ea;border-radius:13px;overflow:hidden;background:#fff;box-shadow:0 10px 28px #0f172a0b}
.tic1 .tic1-service:nth-child(even) .tic1-service-media{order:0}
.tic1 .tic1-service-media{min-height:0;height:235px;flex:none}
.tic1 .tic1-service-media img{width:100%;height:100%;object-fit:cover}
.tic1 .tic1-service>div:last-child{padding:24px 26px 28px;flex:1}
.tic1 .tic1-service h3{font-size:clamp(21px,2vw,26px);margin:8px 0}
.tic1 .tic1-service p{font-size:16px;line-height:1.65}
.tic1 .tic1-why>.wrap{align-items:start}
.tic1 .tic1-why p{font-size:16px;line-height:1.7}

/* Atlas WHY US layout is defined once by awb_atlas_415b12_css() at the end of the CSS bundle. */

.tic1 .tic-benefit-story{padding:19px 0;grid-template-columns:40px minmax(0,1fr)}
.tic1 .tic-benefit-story h3{font-size:20px}
.tic1 .tic-benefit-story p{font-size:15px}
.tic1 .tic-cta{padding:52px 0}
.tic1 .tic-cta h2{font-size:clamp(28px,3.2vw,42px)}
.tic1 .tic-process-grid{gap:16px}
.tic1 .tic-process-card{padding:23px}
.tic1 .tic-process-card p{font-size:15px}
.tic1 .tic-area-media{height:340px}
.tic1 .tic-contact>.wrap{gap:42px}
.tic1 .tic-faq-detail summary{font-size:17px;line-height:1.5}
@media(max-width:850px){.tic1 .tic1-why>.wrap{grid-template-columns:1fr}.tic1 .tic1-service-list{gap:15px}.tic1 .tic1-trust>.wrap{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.tic1 .tic1-hero{min-height:500px;padding:70px 0}.tic1 .tic1-hero h1{font-size:clamp(34px,9vw,47px)}.tic1 .tic1-service-list{grid-template-columns:1fr}.tic1 .tic1-service-media{height:220px}.tic1 .tic1-trust>.wrap{grid-template-columns:1fr 1fr}.tic1 .tic1-why>.wrap{gap:22px}.tic1 .tic-area-media{height:260px}.tic1 .tic-cta{padding:45px 0}}
/* Phase 4.6B: Atlas-only benefit text contrast.
   Override the global `.tic article:not(...)` foreground rule for these
   cards, including nested elements, links, and numeric markers. */
.tic.tic1 section.tic1-why article.tic-benefit-story,
.tic.tic1 section.tic1-why article.tic-benefit-story > div,
.tic.tic1 section.tic1-why article.tic-benefit-story h3,
.tic.tic1 section.tic1-why article.tic-benefit-story h4,
.tic.tic1 section.tic1-why article.tic-benefit-story b,
.tic.tic1 section.tic1-why article.tic-benefit-story strong,
.tic.tic1 section.tic1-why article.tic-benefit-story span,
.tic.tic1 section.tic1-why article.tic-benefit-story a { color:#f8fafc!important; }
.tic.tic1 section.tic1-why article.tic-benefit-story p,
.tic.tic1 section.tic1-why article.tic-benefit-story li,
.tic.tic1 section.tic1-why article.tic-benefit-story small { color:#e2e8f0!important; }
.tic.tic1 section.tic1-why article.tic-benefit-story {background:transparent!important;border-top:1px solid rgba(255,255,255,.28)!important;}
.tic.tic1 section.tic1-why article.tic-benefit-story > span {color:#99f6e4!important;font-weight:800;}

.tic2{--haven-rule:rgba(26,39,47,.17);--haven-muted:#52616b;font-family:Georgia,'Times New Roman',serif}
.tic2>section{padding-block:clamp(56px,6vw,96px)}
.tic2 .wrap{min-width:0}
.tic2 .eyebrow,.tic2 .tic2-num,.tic2 .tic2-heading>span,.tic2 .tic2-manifesto>.wrap>span,.tic2 figcaption{font-family:Arial,Helvetica,sans-serif;letter-spacing:.12em;font-size:12px;font-weight:700;text-transform:uppercase}
.tic2 .tic2-hero{padding-top:clamp(40px,5vw,80px);padding-bottom:clamp(48px,5vw,72px)}
.tic2 .tic2-hero>.wrap{grid-template-columns:minmax(0,45fr) minmax(0,55fr);gap:clamp(28px,4vw,66px);align-items:center}
.tic2 .tic2-hero .tic-hero-copy{max-width:590px}
.tic2 .tic2-hero h1{font-size:clamp(44px,4.5vw,76px);line-height:1.06;letter-spacing:-.045em;overflow-wrap:break-word}
.tic2 .tic2-hero .tic-hero-copy>p{max-width:51ch;line-height:1.72;margin-top:22px;color:var(--haven-muted)}
.tic2 .tic2-hero .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.tic2 .tic2-hero figure{min-width:0}
.tic2 .tic2-hero figure img{display:block;width:100%;height:clamp(360px,43vw,580px);object-fit:cover}
.tic2 .tic2-hero figcaption{margin-top:12px;color:var(--haven-muted);font-size:11px}
.tic2 .tic2-manifesto{background:#f8f9f7}
.tic2 .tic2-manifesto>.wrap{grid-template-columns:minmax(105px,.22fr) minmax(0,.85fr) minmax(0,1fr);gap:clamp(18px,3vw,50px);align-items:start}
.tic2 .tic2-manifesto h2{font-size:clamp(31px,3.1vw,49px);max-width:17ch;margin:0}
.tic2 .tic2-manifesto p{max-width:55ch;margin:0;line-height:1.75;color:var(--haven-muted)}
.tic2 .tic2-heading{grid-template-columns:minmax(105px,.22fr) 1fr;gap:clamp(18px,3vw,50px);align-items:baseline;margin-bottom:30px}
.tic2 .tic2-heading h2{margin:0}
.tic2 .tic2-service{grid-template-columns:64px minmax(0,1fr) minmax(220px,37%);gap:clamp(20px,3.2vw,52px);padding:clamp(26px,3.3vw,48px) 0;border-top:1px solid var(--haven-rule);align-items:center}
.tic2 .tic2-service:last-child{border-bottom:1px solid var(--haven-rule)}
.tic2 .tic2-service h3{font-size:clamp(24px,2.5vw,36px);margin:0 0 13px;line-height:1.14}
.tic2 .tic2-service p{max-width:55ch;color:var(--haven-muted);line-height:1.65;margin:0 0 18px}
.tic2 .tic2-service a{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:700;text-underline-offset:5px}
.tic2 .tic2-service .tic2-num{align-self:start;padding-top:8px;color:var(--p)}
.tic2 .tic2-thumb{height:clamp(190px,20vw,290px);overflow:hidden}
.tic2 .tic2-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.tic2 .tic2-service:nth-child(even) .tic2-thumb{order:2}
.tic2 .tic2-benefits{gap:0 36px}
.tic2 .tic2-benefits .tic-benefit-editorial{padding:28px 12px 28px 0;border-top:1px solid var(--haven-rule)}
.tic2 .tic2-benefits h3{font-size:clamp(22px,2.1vw,29px);margin:8px 0 12px}
.tic2 .tic2-benefits p{color:var(--haven-muted);line-height:1.7}
.tic2 .tic-area>.wrap{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(28px,5vw,70px)}
.tic2 .tic-area-media{height:clamp(280px,33vw,430px)}
.tic2 .tic2-process .tic-process-line{grid-template-columns:72px minmax(0,1fr);gap:clamp(18px,3vw,42px);padding:25px 0;border-color:var(--haven-rule)}
.tic2 .tic2-faq .tic-faq-row,.tic2 .tic2-faq .tic-faq-detail{border-color:var(--haven-rule)}
.tic2 .tic2-faq p,.tic2 .tic-contact p{color:var(--haven-muted)}
.tic2 .tic-contact>.wrap{gap:clamp(30px,5vw,76px)}
@media(max-width:900px){
 .tic2 .tic2-hero>.wrap,.tic2 .tic2-manifesto>.wrap{grid-template-columns:1fr;gap:24px}
 .tic2 .tic2-hero figure img{height:clamp(280px,55vw,460px)}
 .tic2 .tic2-manifesto h2{max-width:26ch}
 .tic2 .tic2-heading{grid-template-columns:1fr;gap:12px}
 .tic2 .tic2-service{grid-template-columns:46px minmax(0,1fr);gap:16px}
 .tic2 .tic2-service .tic2-thumb{grid-column:2;order:initial!important;height:clamp(210px,44vw,350px);width:100%}
 .tic2 .tic2-benefits{grid-template-columns:1fr;gap:0}
 .tic2 .tic-area>.wrap{grid-template-columns:1fr}
}
@media(max-width:560px){
 .tic2>section{padding-block:52px}
 .tic2 .tic2-hero h1{font-size:clamp(39px,10vw,56px)}
 .tic2 .tic2-service{grid-template-columns:1fr;gap:12px}
 .tic2 .tic2-service .tic2-thumb{grid-column:1;height:235px}
 .tic2 .tic2-service .tic2-num{padding:0}
 .tic2 .tic2-hero .actions>*{max-width:100%}
}
.tic2{--haven-line:#dce3df;--haven-ink:#172a2c;--haven-soft:#f5f8f6;--haven-accent:var(--p,#136e62)}
.tic2 .tic2-hero{background:#fff;padding-block:clamp(45px,5vw,80px)}
.tic2 .tic2-hero>.wrap{grid-template-columns:minmax(0,47fr) minmax(0,53fr);gap:clamp(28px,4.5vw,75px);align-items:center}
.tic2 .tic2-hero h1{font-size:clamp(39px,4.1vw,66px);line-height:1.12;letter-spacing:-.035em;max-width:14ch;overflow-wrap:normal;word-break:normal}
.tic2 .tic2-hero .tic-hero-copy>p{font-size:17px;line-height:1.7;max-width:48ch}
.tic2 .tic2-hero figure img{height:clamp(400px,43vw,570px);border-radius:2px 80px 2px 2px}
.tic2 .tic2-manifesto{background:var(--haven-soft)}
.tic2 .tic2-manifesto>.wrap{display:grid;grid-template-columns:170px minmax(0,1fr) minmax(0,1.05fr);gap:clamp(22px,4vw,58px);align-items:start}
.tic2 .tic2-manifesto h2{font-size:clamp(30px,3vw,45px);max-width:18ch}
.tic2 .tic2-manifesto p{font-size:17px;max-width:57ch}
.tic2 .tic2-heading{grid-template-columns:170px minmax(0,1fr);gap:clamp(22px,4vw,58px);margin-bottom:36px}
.tic2 .tic2-heading h2{font-size:clamp(32px,3.5vw,48px);max-width:19ch}
.tic2 .tic2-service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.tic2 .tic2-service{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;border:1px solid var(--haven-line)!important;background:#fff;overflow:hidden}
.tic2 .tic2-service:last-child{border-bottom:1px solid var(--haven-line)}
.tic2 .tic2-service .tic2-thumb{width:100%;height:clamp(210px,21vw,295px);order:0!important;overflow:hidden;background:var(--haven-soft)}
.tic2 .tic2-service .tic2-thumb img{width:100%;height:100%;object-fit:cover}
.tic2 .tic2-service-copy{padding:28px 30px 32px;display:flex;flex-direction:column;flex:1}
.tic2 .tic2-service h3{font-size:clamp(24px,2.3vw,32px);margin:0 0 13px}
.tic2 .tic2-service p{font-size:16px;line-height:1.7;flex:1;margin-bottom:20px}
.tic2 .tic2-service a{align-self:flex-start;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:4px}
.tic2 .tic2-why{background:var(--haven-soft)}
.tic2 .tic2-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.tic2 .tic2-benefits .tic-benefit-editorial{border:1px solid var(--haven-line);padding:30px;background:#fff}
.tic2 .tic2-benefits h3{margin:0 0 14px}
.tic2 .tic2-process-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.tic2 .tic2-process .tic-process-line{display:block;border:1px solid var(--haven-line);border-top:3px solid var(--haven-accent);padding:28px 25px;background:#fff}
.tic2 .tic2-process .tic-process-line h3{font-size:24px;line-height:1.25;margin:0 0 12px}
.tic2 .tic2-process .tic-process-line p{font-size:16px;line-height:1.65}
.tic2 .tic2-faq{background:var(--haven-soft)}
.tic2 .tic2-faq .tic-faq-row{display:block;padding:24px 0;border-top:1px solid var(--haven-line)}
.tic2 .tic2-faq .tic-faq-row h3{font-size:21px;margin:0 0 8px}
.tic2 .tic2-faq .tic-faq-row p{font-size:16px;margin:0}
.tic2 .tic-contact>.wrap{align-items:start}
.tic2 .tic-area-media img{border-radius:2px 48px 2px 2px}
@media(max-width:900px){
 .tic2 .tic2-hero>.wrap,.tic2 .tic2-manifesto>.wrap,.tic2 .tic2-heading{grid-template-columns:1fr;gap:22px}
 .tic2 .tic2-hero h1{max-width:18ch}
 .tic2 .tic2-process-list{grid-template-columns:1fr}
 .tic2 .tic2-process .tic-process-line{padding:24px}
}
@media(max-width:650px){
 .tic2 .tic2-hero h1{font-size:clamp(36px,9vw,49px);max-width:100%}
 .tic2 .tic2-hero figure img{height:310px;border-top-right-radius:45px}
 .tic2 .tic2-service-list,.tic2 .tic2-benefits{grid-template-columns:1fr}
 .tic2 .tic2-service .tic2-thumb{height:220px;grid-column:auto;order:0!important}
 .tic2 .tic2-service-copy{padding:23px}
 .tic2 .tic2-manifesto>.wrap{gap:16px}
 .tic2 .tic2-benefits .tic-benefit-editorial{padding:23px}
}.tic.tic3{--forge-space:clamp(54px,6vw,84px)}
.tic.tic3>section{padding-block:var(--forge-space)}
.tic.tic3 .tic3-hero{padding-block:clamp(48px,5.5vw,82px)}
.tic.tic3 .tic3-hero>.wrap{grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:clamp(25px,4vw,58px);align-items:center}
.tic.tic3 .tic3-hero h1{font-size:clamp(36px,4.1vw,63px);line-height:1.07;letter-spacing:-.035em;text-wrap:balance}
.tic.tic3 .tic3-hero .tic-hero-copy p{font-size:17px;line-height:1.65;color:#f1f5f9!important}
.tic.tic3 .tic3-hero-photo{height:auto;min-height:0;border:5px solid rgba(255,255,255,.75);background:#0e706b;overflow:hidden}
.tic.tic3 .tic3-hero-photo img{width:100%;height:auto!important;max-height:none!important;object-fit:contain!important}
.tic.tic3 .tic3-trust{gap:0;margin-top:25px}
.tic.tic3 .tic3-trust .tic-trust-box{padding:13px 15px}
.tic.tic3 .tic3-services header{margin-bottom:27px}
.tic.tic3 .tic3-service-grid{gap:22px}
.tic.tic3 .tic3-service{border:1px solid #d9e2e7;border-radius:12px;overflow:hidden;box-shadow:0 10px 26px rgba(15,23,42,.06)}
.tic.tic3 .tic3-photo{height:210px;overflow:hidden}
.tic.tic3 .tic3-photo img{width:100%;height:100%;object-fit:cover}
.tic.tic3 .tic3-copy{padding:24px}
.tic.tic3 .tic3-copy b{font-size:20px}
.tic.tic3 .tic3-copy p{font-size:15px;line-height:1.65}
.tic.tic3 .tic3-why{background:#101827!important;color:#f8fafc!important}
.tic.tic3 .tic3-why>.wrap{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(25px,4vw,62px)}
.tic.tic3 .tic3-why h2,.tic.tic3 .tic3-why>.wrap>div>p{color:#f8fafc!important}
.tic.tic3 .tic3-why .tic-benefit-check{background:#1d293a!important;border:1px solid #435268!important;border-radius:10px;min-width:0}
.tic.tic3 .tic3-why .tic-benefit-check h3,.tic.tic3 .tic3-why .tic-benefit-check b{color:#fff!important}
.tic.tic3 .tic3-why .tic-benefit-check p{color:#dce6ef!important}
.tic.tic3 .tic3-why .tic-benefit-check b{font-size:19px}
.tic.tic3 .tic3-process .tic-process-grid{gap:18px}
.tic.tic3 .tic3-process .tic-process-card{padding:26px;border-top:3px solid var(--p);border-radius:0 0 10px 10px;background:#f8fafb}
.tic.tic3 .tic3-process .tic-process-card h3{font-size:21px;margin-bottom:12px}
.tic.tic3 .tic3-process .tic-process-card p{font-size:15px;line-height:1.65}
.tic.tic3 .tic-area-media{height:auto;min-height:250px}
.tic.tic3 .tic-area-media img{width:100%;height:auto!important;object-fit:contain!important}
@media(max-width:900px){
 .tic.tic3 .tic3-hero>.wrap,.tic.tic3 .tic3-why>.wrap{grid-template-columns:1fr}
 .tic.tic3 .tic3-hero h1{font-size:clamp(35px,8vw,55px)}
 .tic.tic3 .tic3-hero-photo{max-width:640px}
 .tic.tic3 .tic3-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tic.tic3 .tic3-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
 .tic.tic3>section{padding-block:50px}
 .tic.tic3 .tic3-service-grid,.tic.tic3 .tic3-benefits{grid-template-columns:1fr}
 .tic.tic3 .tic3-hero h1{font-size:clamp(34px,9vw,47px)}
 .tic.tic3 .tic3-trust{grid-template-columns:1fr 1fr}
 .tic.tic3 .tic3-hero-photo{border-width:3px}
 .tic.tic3 .tic3-photo{height:220px}
}/* Hide decorative numbering, not phone numbers or meaningful text. */
.tic .tic2-num,.tic .tic7-num,.tic .tic7-index,.tic .tic8-label,
.tic .tic5-index,.tic .tic4-service small,.tic .tic-benefit-grid>small,
.tic .tic-benefit-mag>span:first-child,.tic .tic-benefit-split>div:first-child,
.tic .tic-trust-line>span:first-child,.tic .tx-benefit>span:first-child,
.tic .tx-step>span:first-child,.tic .ty-step>span:first-child,
.tic .tz-step>span:first-child,.tic .ty-benefit>small:first-child,
.tic .tz-benefit>small:first-child,.tic .ty-card-body>small:first-child,
.tic .tx-service-copy>small:first-child,.tic .tz-service-body>small:first-child{display:none!important}
/* Illustration assets contain embedded lettering: avoid clipping the artwork. */
.tic img.tic-hero-img[src$=".svg"],.tic img.tz-image[src$=".svg"],
.tic img.ty-photo[src$=".svg"]{object-fit:contain!important;height:auto!important;max-height:none!important}
.tic .awb-phone-lead{max-width:560px}
.tic .awb-phone-lead .btn{margin-top:14px}
@media(max-width:900px){
 .tic .tic-process-line,.tic .tic7-service,.tic .tic2-service{grid-template-columns:minmax(0,1fr)!important}
 .tic .tic-process-line>div,.tic .tic7-service>*,.tic .tic2-service>*{grid-column:auto!important}
 .tic .tic-hero-copy{min-width:0}
 .tic .tic-hero-copy h1{overflow-wrap:break-word}
}.tic.tic1 .tic1-why .tic-benefit-story {
  display:grid;
  grid-template-columns:minmax(0,1fr)!important;
  min-width:0;
}
.tic.tic1 .tic1-why .tic-benefit-story > div {
  grid-column:1 / -1;
  min-width:0;
  width:100%;
}.tic.tic1 .tic1-hero{position:relative;isolation:isolate}
.tic.tic1 .tic1-hero .tic1-bg{position:absolute;inset:0;overflow:hidden;z-index:0}
.tic.tic1 .tic1-hero .tic1-bg img.tic-hero-img,
.tic.tic1 .tic1-hero .tic1-bg img.tic-hero-img[src$=".svg"]{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  max-height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
}
.tic.tic1 .tic1-hero .tic1-shade{position:absolute;inset:0;z-index:1}
.tic.tic1 .tic1-hero > .wrap{position:relative;z-index:2}
.tic.tic1 .tic1-trust{position:relative;z-index:3}.tic.tic4 .tic4-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:minmax(430px,auto) auto}
.tic.tic4 .tic4-copy{min-width:0;padding:clamp(28px,4.5vw,68px)}
.tic.tic4 .tic4-hero .tic-hero-copy{min-width:0;max-width:680px}
.tic.tic4 .tic4-hero h1{font-size:clamp(36px,4vw,60px);line-height:1.1;letter-spacing:-.035em;overflow-wrap:break-word}
.tic.tic4 .tic4-image{min-width:0;min-height:360px;display:flex;align-items:stretch;background:var(--soft)}
.tic.tic4 .tic4-image img.tic-hero-img{width:100%;height:100%;object-fit:contain;object-position:center}
.tic.tic4 .tic4-service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.tic.tic4 .tic4-service{min-width:0;overflow:hidden}
.tic.tic4 .tic4-photo{height:230px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--soft)}
.tic.tic4 .tic4-photo img.tic-service-img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.tic.tic4 .tic4-benefits{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.tic.tic4 .tic-benefit-grid{min-width:0}
@media(max-width:900px){
 .tic.tic4 .tic4-hero{grid-template-columns:minmax(0,1fr);grid-template-rows:auto}
 .tic.tic4 .tic4-image{min-height:280px;max-height:420px}
 .tic.tic4 .tic4-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tic.tic4 .tic4-title{gap:24px}
}
@media(max-width:650px){
 .tic.tic4 .tic4-hero h1{font-size:clamp(32px,8.5vw,43px);line-height:1.12}
 .tic.tic4 .tic4-service-grid,.tic.tic4 .tic4-benefits{grid-template-columns:minmax(0,1fr)}
 .tic.tic4 .tic4-copy{padding:30px 20px}
 .tic.tic4 .tic4-photo{height:220px}
 .tic.tic4 .tic4-trust{grid-template-columns:repeat(2,minmax(0,1fr))}
}.tic.tic5{background:#0b0d10;color:#f5f5f5}
.tic.tic5 .tic5-hero{padding:46px 0 36px}
.tic.tic5 .tic5-hero>.wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,54px);align-items:center}
.tic.tic5 .tic5-hero .tic-hero-copy{min-width:0}
.tic.tic5 .tic5-hero h1{font-size:clamp(36px,4.1vw,60px);line-height:1.09;letter-spacing:-.035em;overflow-wrap:break-word;color:#f8fafc!important}
.tic.tic5 .tic5-hero .tic-hero-copy p{max-width:560px}
.tic.tic5 .tic5-photo{height:clamp(290px,32vw,450px);min-width:0;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#102a30}
.tic.tic5 .tic5-photo img.tic-hero-img{width:100%!important;height:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center}
.tic.tic5 .tic5-trust{padding:12px 0 36px}
.tic.tic5 .tic5-trust>.wrap{margin-top:0}
.tic.tic5 .tic5-services,.tic.tic5 .tic5-why,.tic.tic5 .tic5-process{padding-top:58px;padding-bottom:58px}
.tic.tic5 .tic5-services h2,.tic.tic5 .tic5-why h2,.tic.tic5 .tic5-process h2{font-size:clamp(30px,3.7vw,48px);line-height:1.12;color:#f8fafc!important}
.tic.tic5 .tic5-services .tic5-service{grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;min-width:0}
.tic.tic5 .tic5-services .tic5-service>div{min-width:0}
.tic.tic5 .tic5-service h3,.tic.tic5 .tic5-service p{color:#f8fafc!important;overflow-wrap:break-word}
.tic.tic5 .tic5-service p{color:#cbd5e1!important;max-width:850px}
.tic.tic5 .tic5-service>a{color:#6ee7dc!important;font-size:24px;text-decoration:none;min-width:32px;text-align:center}
.tic.tic5 .tic5-benefits{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
.tic.tic5 .tic-benefit-dark{min-width:0}
.tic.tic5 .tic-benefit-dark h3{color:#f8fafc!important}
.tic.tic5 .tic-benefit-dark p{color:#d5dce5!important}
.tic.tic5 .tic5-label{color:#5eead4!important}
.tic.tic5 .tic-area h2,.tic.tic5 .tic-area h3,.tic.tic5 .tic-area p,
.tic.tic5 .tic-contact h2,.tic.tic5 .tic-contact h3,.tic.tic5 .tic-contact p{color:#f8fafc!important}
.tic.tic5 .tic-contact .lead h3,.tic.tic5 .tic-contact .lead p,.tic.tic5 .tic-contact .lead small{color:#111827!important}
@media(max-width:900px){
 .tic.tic5 .tic5-hero>.wrap{grid-template-columns:minmax(0,1fr)}
 .tic.tic5 .tic5-photo{height:clamp(250px,50vw,390px)}
}
@media(max-width:650px){
 .tic.tic5 .tic5-hero{padding:30px 0 24px}
 .tic.tic5 .tic5-hero h1{font-size:clamp(32px,9vw,44px)}
 .tic.tic5 .tic5-services,.tic.tic5 .tic5-why,.tic.tic5 .tic5-process{padding-top:42px;padding-bottom:42px}
 .tic.tic5 .tic5-benefits{grid-template-columns:minmax(0,1fr)}
 .tic.tic5 .tic5-service{padding:22px 0}
 .tic.tic5 .tic5-service h3{font-size:22px}
}/* Shared .tic article:not(...) specificity previously forced dark ink on black service rows. */
.tic.tic5 article.tic5-service:not(.tic-benefit-dark):not(.tic-process-dark),
.tic.tic5 article.tic5-service:not(.tic-benefit-dark):not(.tic-process-dark) h3{
 color:#f8fafc!important;
}
.tic.tic5 article.tic5-service:not(.tic-benefit-dark):not(.tic-process-dark) p{
 color:#cbd5e1!important;
}
.tic.tic5 .tic5-service{grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:24px 0}
.tic.tic5 .tic5-service>div{min-width:0}
.tic.tic5 .tic5-service h3{font-size:clamp(21px,2.1vw,27px);line-height:1.22}
.tic.tic5 .tic5-service p{font-size:16px;line-height:1.55;margin-bottom:0}
.tic.tic5 .tic5-service>a{align-self:center}
.tic.tic5 .tic-map{background:#fff!important;color:#111827!important}
.tic.tic5 .tic-map h1,.tic.tic5 .tic-map h2,.tic.tic5 .tic-map h3,
.tic.tic5 .tic-map p{color:#111827!important}
.tic.tic5 .tic-map .demo-map{background:#fff;color:#111827}
.tic.tic5 .tic-map .demo-map-art{color:#536874}.tic.tic6{background:#fffaf2}
.tic.tic6 .tic6-hero{padding:54px 0 38px}
.tic.tic6 .tic6-hero>.wrap{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);align-items:center;gap:clamp(20px,3vw,44px);min-height:0}
.tic.tic6 .tic6-hero .tic6-photo{position:relative;inset:auto;grid-column:2;grid-row:1;width:100%;height:clamp(330px,35vw,480px);min-height:0;border-radius:24px;overflow:hidden;background:#e4f3eb}
.tic.tic6 .tic6-hero .tic6-photo img.tic-hero-img{display:block;width:100%!important;height:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important}
.tic.tic6 .tic6-hero .tic6-card{position:relative;inset:auto;grid-column:1;grid-row:1;width:auto;min-width:0;margin:0;padding:clamp(24px,3.3vw,48px);border-radius:22px;box-shadow:0 14px 40px #4a352516;background:#fff;z-index:1}
.tic.tic6 .tic6-hero h1{font-size:clamp(34px,3.8vw,56px);line-height:1.1;letter-spacing:-.035em;overflow-wrap:break-word}
.tic.tic6 .tic6-hero .tic-hero-copy{min-width:0}
.tic.tic6 .tic6-hero .tic-hero-copy p{font-size:16px;line-height:1.55}
.tic.tic6 .tic6-story>.wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start}
.tic.tic6 .tic6-story h2{font-size:clamp(30px,3.5vw,46px);line-height:1.13}
.tic.tic6 .tic6-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.tic.tic6 .tic6-service{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:stretch;min-width:0;overflow:hidden;border-radius:18px;background:#fff}
.tic.tic6 .tic6-service-photo{position:relative;inset:auto;min-width:0;min-height:230px;height:auto;background:#e4f3eb;overflow:hidden}
.tic.tic6 .tic6-service-photo img.tic-service-img{display:block;width:100%!important;height:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important}
.tic.tic6 .tic6-service>div:last-child{min-width:0;padding:clamp(18px,2vw,28px)}
.tic.tic6 .tic6-service h3{font-size:clamp(19px,1.8vw,24px);line-height:1.22;overflow-wrap:break-word}
.tic.tic6 .tic6-service p{font-size:15px;line-height:1.55;overflow-wrap:break-word}
.tic.tic6 .tic6-service>div:last-child>span{display:none}
.tic.tic6 .tic6-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.tic.tic6 .tic6-benefits .tic-benefit-story{display:block;min-width:0;padding:26px;background:#fff;border:1px solid #e6dccd;border-radius:14px}
.tic.tic6 .tic6-benefits .tic-benefit-story>span{display:none}
.tic.tic6 .tic6-benefits .tic-benefit-story>div{min-width:0}
.tic.tic6 .tic6-benefits .tic-benefit-story h3{font-size:20px}
.tic.tic6 .tic6-benefits .tic-benefit-story p{font-size:16px;line-height:1.55}
.tic.tic6 .tic6-story,.tic.tic6 .tic6-services,.tic.tic6 .tic6-why{padding-top:62px;padding-bottom:62px}
@media(max-width:900px){
 .tic.tic6 .tic6-hero>.wrap{grid-template-columns:minmax(0,1fr)}
 .tic.tic6 .tic6-hero .tic6-photo{grid-column:1;grid-row:1;height:clamp(260px,54vw,410px)}
 .tic.tic6 .tic6-hero .tic6-card{grid-column:1;grid-row:2;margin:0}
 .tic.tic6 .tic6-story>.wrap{grid-template-columns:minmax(0,1fr);gap:20px}
 .tic.tic6 .tic6-service-grid{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:650px){
 .tic.tic6 .tic6-hero{padding:28px 0}
 .tic.tic6 .tic6-hero .tic6-photo{height:260px}
 .tic.tic6 .tic6-hero .tic6-card{padding:25px 20px}
 .tic.tic6 .tic6-hero h1{font-size:clamp(32px,8.5vw,42px)}
 .tic.tic6 .tic6-service{grid-template-columns:minmax(0,1fr)}
 .tic.tic6 .tic6-service-photo{height:210px;min-height:0}
 .tic.tic6 .tic6-benefits{grid-template-columns:minmax(0,1fr)}
 .tic.tic6 .tic6-story,.tic.tic6 .tic6-services,.tic.tic6 .tic6-why{padding-top:42px;padding-bottom:42px}
}.tic.tic7 .tic7-service{display:grid;grid-template-columns:minmax(190px,.85fr) minmax(0,1.6fr) auto;gap:clamp(14px,2.4vw,32px);align-items:start;padding:26px 0}
.tic.tic7 .tic7-service>h3{grid-column:1;min-width:0;font-size:clamp(22px,2.2vw,29px);line-height:1.2;margin:0;overflow-wrap:normal}
.tic.tic7 .tic7-service>p{grid-column:2;min-width:0;margin:0;max-width:65ch;font-size:16px;line-height:1.6;overflow-wrap:normal}
.tic.tic7 .tic7-service>a{grid-column:3;white-space:nowrap;align-self:start;font-weight:700}
.tic.tic7 .tic7-process .tic-process-line{display:block;grid-template-columns:none;padding:26px 0}
.tic.tic7 .tic7-process .tic-process-line>div{width:100%;min-width:0;max-width:780px}
.tic.tic7 .tic7-process .tic-process-line h3{font-size:clamp(20px,2vw,26px);line-height:1.25}
.tic.tic7 .tic7-process .tic-process-line p{max-width:68ch;font-size:16px;line-height:1.6}
.tic.tic7 .tic7-photo{padding-top:28px!important}
.tic.tic7 .tic7-photo .wrap{overflow:hidden}
.tic.tic7 .tic7-photo img.tic-hero-img{display:block;width:100%;height:auto;max-height:490px;object-fit:contain;object-position:center}
.tic.tic7 .tic7-meta{margin-top:36px;gap:10px}
.tic.tic7 .tic7-services,.tic.tic7 .tic7-process{overflow-wrap:normal}
@media(max-width:900px){
 .tic.tic7 .tic7-service{grid-template-columns:minmax(0,1fr) auto!important;gap:12px 20px}
 .tic.tic7 .tic7-service>h3{grid-column:1!important}
 .tic.tic7 .tic7-service>p{grid-column:1 / -1!important;grid-row:2!important}
 .tic.tic7 .tic7-service>a{grid-column:2!important;grid-row:1!important}
 .tic.tic7 .tic7-photo img.tic-hero-img{max-height:380px}
}
@media(max-width:650px){
 .tic.tic7 .tic7-service{grid-template-columns:minmax(0,1fr)!important;gap:12px}
 .tic.tic7 .tic7-service>h3,.tic.tic7 .tic7-service>p,.tic.tic7 .tic7-service>a{grid-column:1!important;grid-row:auto!important}
 .tic.tic7 .tic7-service>a{justify-self:start}
 .tic.tic7 .tic7-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
 .tic.tic7 .tic7-photo img.tic-hero-img{max-height:300px}
 .tic.tic7 .tic-benefit-line{grid-template-columns:minmax(0,1fr);gap:8px}
}.tic.tic8 .tic8-hero>.wrap{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(24px,3.5vw,52px)}
.tic.tic8 .tic8-hero h1{font-size:clamp(37px,4.6vw,65px);line-height:1.07;overflow-wrap:break-word}
.tic.tic8 .tic8-hero .tic-hero-copy{min-width:0}
.tic.tic8 .tic8-hero .tic8-photo{min-width:0;height:390px;overflow:hidden;background:#dff1ed}
.tic.tic8 .tic8-hero .tic8-photo img{width:100%;height:100%;object-fit:contain;object-position:center}
.tic.tic8 .tic8-trust>.wrap{grid-template-columns:repeat(4,minmax(0,1fr))}
.tic.tic8 .tic8-trust .tic-trust-box{min-width:0}
.tic.tic8 .tic8-services,.tic.tic8 .tic8-why{padding-top:64px;padding-bottom:64px}
.tic.tic8 .tic8-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.tic.tic8 .tic8-service{min-width:0;overflow:hidden}
.tic.tic8 .tic8-service .tic8-photo{height:230px;overflow:hidden;background:#e7f4f1}
.tic.tic8 .tic8-service .tic8-photo img{width:100%;height:100%;object-fit:contain;object-position:center}
.tic.tic8 .tic8-service h3{font-size:clamp(20px,2vw,26px);line-height:1.2;margin-top:18px}
.tic.tic8 .tic8-service p{font-size:16px;line-height:1.55;margin-bottom:24px}
.tic.tic8 .tic8-benefits{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.tic.tic8 .tic8-benefits .tic-benefit-bold{min-width:0;min-height:180px;background:#dff7f0;color:#102b39!important}
.tic.tic8 .tic8-benefits .tic-benefit-bold h3,.tic.tic8 .tic8-benefits .tic-benefit-bold p{color:#102b39!important}
.tic.tic8 .tic8-benefits .tic-benefit-bold>span{display:none}
.tic.tic8 .tic8-benefits .tic-benefit-bold p{font-size:16px;line-height:1.55}
@media(max-width:900px){
 .tic.tic8 .tic8-hero>.wrap{grid-template-columns:minmax(0,1fr)}
 .tic.tic8 .tic8-hero .tic8-photo{height:330px}
 .tic.tic8 .tic8-trust>.wrap{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){
 .tic.tic8 .tic8-service-grid,.tic.tic8 .tic8-benefits{grid-template-columns:minmax(0,1fr)}
 .tic.tic8 .tic8-hero h1{font-size:clamp(34px,9vw,46px)}
 .tic.tic8 .tic8-hero .tic8-photo{height:260px}
 .tic.tic8 .tic8-services,.tic.tic8 .tic8-why{padding-top:45px;padding-bottom:45px}
 .tic.tic8 .tic8-benefits .tic-benefit-bold{min-height:0}
}.tic.tic8 .tic8-hero{padding:56px 0!important}
.tic.tic8 .tic8-hero .tic8-photo{height:340px}
.tic.tic8 .tic8-hero h1{font-size:clamp(37px,4vw,57px);max-width:700px}
.tic.tic8 .tic8-trust{padding:20px 0!important}
.tic.tic8 .tic8-trust .tic-trust-box{padding:17px 20px}
.tic.tic8 .tic8-services,.tic.tic8 .tic8-why,.tic.tic8 .tic8-process{padding:58px 0!important}
.tic.tic8 .tic8-services h2,.tic.tic8 .tic8-why h2,.tic.tic8 .tic8-process h2{font-size:clamp(31px,3.5vw,46px);margin-bottom:30px}
.tic.tic8 .tic8-service-grid{gap:26px}
.tic.tic8 .tic8-service{display:flex;flex-direction:column;min-height:0;box-shadow:7px 7px 0 var(--a)}
.tic.tic8 .tic8-service .tic8-photo{height:205px}
.tic.tic8 .tic8-service h3{font-size:clamp(22px,2.3vw,28px);margin-bottom:10px}
.tic.tic8 .tic8-service p{font-size:16px;line-height:1.6;margin-bottom:22px}
.tic.tic8 .tic8-benefits .tic-benefit-bold{min-height:160px;padding:25px}
.tic.tic8 .tic8-process{background:#f0f8f6}
.tic.tic8 .tic8-process .tic-process-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.tic.tic8 .tic8-process .tic-process-card{min-width:0;padding:27px;border:2px solid #142b38;border-top:6px solid var(--a);box-shadow:5px 5px 0 #c9e8e0}
.tic.tic8 .tic8-process .tic-process-card h3{font-size:21px;margin-bottom:12px;color:#132433!important}
.tic.tic8 .tic8-process .tic-process-card p{font-size:16px;line-height:1.6;color:#334155!important}
.tic.tic8 .tic-cta{padding:48px 0!important}
.tic.tic8 .tic-cta>.wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center}
.tic.tic8 .tic-cta h2{font-size:clamp(31px,3.2vw,43px);margin-bottom:12px}
.tic.tic8 .tic-cta p{font-size:16px;line-height:1.5;max-width:640px}
.tic.tic8 .tic-cta .actions{margin:0;justify-content:flex-end}
.tic.tic8 .tic-cta .btn{display:inline-flex;min-width:190px;min-height:52px;padding:14px 22px;background:#fff!important;color:#0d6b67!important;border:2px solid #fff;border-radius:9px;font-size:16px;font-weight:800;white-space:nowrap;text-decoration:none}
.tic.tic8 .tic-area{padding:58px 0!important}
.tic.tic8 .tic-area-media{height:300px;overflow:hidden}
.tic.tic8 .tic-area-media img{width:100%;height:100%;object-fit:contain}
.tic.tic8 .tic8-faq{padding:48px 0!important}
@media(max-width:900px){
 .tic.tic8 .tic8-process .tic-process-grid{grid-template-columns:minmax(0,1fr)}
 .tic.tic8 .tic-cta>.wrap{grid-template-columns:minmax(0,1fr)}
 .tic.tic8 .tic-cta .actions{justify-content:flex-start}
}
@media(max-width:650px){
 .tic.tic8 .tic8-hero{padding:38px 0!important}
 .tic.tic8 .tic8-hero .tic8-photo{height:250px}
 .tic.tic8 .tic8-services,.tic.tic8 .tic8-why,.tic.tic8 .tic8-process{padding:40px 0!important}
 .tic.tic8 .tic8-service .tic8-photo{height:185px}
 .tic.tic8 .tic-cta .btn{width:100%}
 .tic.tic8 .tic-area-media{height:230px}
}/* Previous patch targeted .tic-process-card; Beacon actually renders .tic-process-bold. */
.tic.tic8 .tic8-process .tic-process-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;align-items:stretch}
.tic.tic8 .tic8-process article.tic-process-bold{display:flex!important;flex-direction:column;gap:12px;min-width:0;min-height:190px;padding:26px!important;background:#fff!important;border:2px solid #17313b!important;border-top:7px solid #05a995!important;box-shadow:6px 6px 0 #b8ddd4!important;color:#172b36!important}
.tic.tic8 .tic8-process article.tic-process-bold>b{display:none!important}
.tic.tic8 .tic8-process article.tic-process-bold h3{margin:0;font-size:clamp(20px,2vw,25px);line-height:1.2;color:#132433!important}
.tic.tic8 .tic8-process article.tic-process-bold p{margin:0;font-size:16px;line-height:1.6;color:#34465a!important}
/* Smaller images keep the focus on service names and useful text. */
.tic.tic8 .tic8-service-grid{gap:22px!important}
.tic.tic8 .tic8-service{display:flex;flex-direction:column;min-height:0!important}
.tic.tic8 .tic8-service .tic8-photo{height:156px!important;background:#e8f5f1}
.tic.tic8 .tic8-service .tic8-photo img{width:100%;height:100%;object-fit:contain;object-position:center}
.tic.tic8 .tic8-service .tic8-label{display:none!important}
.tic.tic8 .tic8-service h3{margin:19px 22px 9px!important;font-size:clamp(21px,2.1vw,26px)}
.tic.tic8 .tic8-service p{margin:0 22px 24px!important;font-size:16px;line-height:1.6}
/* Trust band and benefits should read as intentional compact components. */
.tic.tic8 .tic8-trust{padding:14px 0!important}
.tic.tic8 .tic8-trust .tic-trust-box{padding:14px 18px!important}
.tic.tic8 .tic8-benefits .tic-benefit-bold{min-height:135px!important;padding:22px!important}
/* The shared CTA is not .tic8-cta; scope through Beacon's main wrapper. */
.tic.tic8 section.tic-cta{padding:45px 0!important}
.tic.tic8 section.tic-cta>.wrap{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:28px;align-items:center}
.tic.tic8 section.tic-cta .actions{display:flex!important;align-items:center;justify-content:flex-end;margin:0!important}
.tic.tic8 section.tic-cta .actions>a.btn{display:inline-flex!important;align-items:center;justify-content:center;min-width:205px;min-height:56px;padding:15px 24px!important;border:2px solid #fff!important;background:#fff!important;color:#086b64!important;border-radius:8px!important;font-size:17px!important;font-weight:800!important;white-space:nowrap}
.tic.tic8 .tic8-hero .tic8-photo{height:300px!important}
.tic.tic8 .tic8-services,.tic.tic8 .tic8-why,.tic.tic8 .tic8-process{padding:48px 0!important}
@media(max-width:900px){
 .tic.tic8 .tic8-process .tic-process-grid{grid-template-columns:minmax(0,1fr)!important}
 .tic.tic8 .tic8-process article.tic-process-bold{min-height:0}
 .tic.tic8 section.tic-cta>.wrap{grid-template-columns:minmax(0,1fr)!important}
 .tic.tic8 section.tic-cta .actions{justify-content:flex-start}
}
@media(max-width:650px){
 .tic.tic8 .tic8-service .tic8-photo{height:170px!important}
 .tic.tic8 .tic8-hero .tic8-photo{height:245px!important}
 .tic.tic8 .tic8-services,.tic.tic8 .tic8-why,.tic.tic8 .tic8-process{padding:38px 0!important}
 .tic.tic8 section.tic-cta .actions>a.btn{width:100%}
}.tic.tic9{overflow:hidden;background:#fff;color:#111827}
.tic.tic9>section{padding:clamp(42px,5vw,76px) 0}
.tic.tic9 .wrap{min-width:0}
.tic.tic9 .tic9-hero{padding-top:52px;padding-bottom:40px;background:#f5f8f8}
.tic.tic9 .tic9-hero h1{font-size:clamp(40px,5vw,72px);line-height:1.06;letter-spacing:-.045em;max-width:950px;margin:18px 0 20px;overflow-wrap:normal}
.tic.tic9 .tic9-kicker{font-size:12px;letter-spacing:.13em;color:#087d79}
.tic.tic9 .tic9-sub{grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;margin:18px 0 28px}
.tic.tic9 .tic9-sub p{font-size:clamp(16px,1.6vw,19px);line-height:1.6;max-width:700px;margin:0}
.tic.tic9 .tic9-sub .actions{display:flex;justify-content:flex-end;align-items:center}
.tic.tic9 .tic9-sub .btn{white-space:nowrap;padding:15px 23px}
.tic.tic9 .tic9-hero .tic9-photo{height:clamp(260px,33vw,440px);overflow:hidden;border-radius:14px;background:#dcefed}
.tic.tic9 .tic9-hero .tic9-photo img{width:100%;height:100%;object-fit:contain;object-position:center}
.tic.tic9 .tic9-intro{background:#fff}
.tic.tic9 .tic9-intro>.wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start}
.tic.tic9 .tic9-intro h2{font-size:clamp(30px,3.3vw,46px);line-height:1.14;max-width:580px;margin:0}
.tic.tic9 .tic9-intro p{font-size:17px;line-height:1.7;max-width:650px;margin:0}
.tic.tic9 .tic9-services,.tic.tic9 .tic9-process{background:#f5f8f8}
.tic.tic9 .tic9-services>.wrap,.tic.tic9 .tic9-why>.wrap,.tic.tic9 .tic9-process>.wrap{display:block}
.tic.tic9 .tic9-services aside,.tic.tic9 .tic9-why aside,.tic.tic9 .tic9-process aside{display:block;font-size:13px;font-weight:900;letter-spacing:.14em;color:#087d79;margin-bottom:24px;text-transform:uppercase}
.tic.tic9 .tic9-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.tic.tic9 article.tic9-service{display:flex;flex-direction:column;min-width:0;min-height:0;background:#fff;border:1px solid #dae4e6;border-radius:14px;overflow:hidden;box-shadow:0 8px 22px #0e34440a}
.tic.tic9 .tic9-service .tic9-photo,.tic.tic9 .tic9-feature .tic9-photo{height:clamp(190px,22vw,270px);min-height:0;overflow:hidden;background:#e7f4f2}
.tic.tic9 .tic9-service .tic9-photo img{width:100%;height:100%;object-fit:contain;object-position:center}
.tic.tic9 .tic9-service .tic9-service-copy{padding:26px 28px 30px;display:flex;flex-direction:column;flex:1;min-width:0}
.tic.tic9 .tic9-service h3{font-size:clamp(21px,2.3vw,28px);line-height:1.2;margin:0 0 12px;color:#142235!important}
.tic.tic9 .tic9-service p{font-size:16px;line-height:1.65;color:#475569!important;margin:0 0 20px;flex:1}
.tic.tic9 .tic9-service a{font-weight:800;color:#087d79;align-self:flex-start}
.tic.tic9 .tic9-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.tic.tic9 .tic-benefit-mag{min-width:0;background:#f7faf9;border:1px solid #dfe8e7;border-radius:12px;padding:26px}
.tic.tic9 .tic-benefit-mag h3{font-size:22px;margin:0 0 12px;color:#142235!important}
.tic.tic9 .tic-benefit-mag p{font-size:16px;line-height:1.6;margin:0;color:#475569!important}
.tic.tic9 .tic9-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.tic.tic9 .tic9-process .tic-process-line{display:block;min-width:0;background:#fff;border:1px solid #dce5e8;border-top:5px solid #0c8c83;border-radius:10px;padding:26px;box-shadow:0 7px 20px #0e344408}
.tic.tic9 .tic9-process .tic-process-line>div{min-width:0}
.tic.tic9 .tic9-process .tic-process-line h3{font-size:21px;line-height:1.3;margin:0 0 12px;color:#142235!important;overflow-wrap:break-word}
.tic.tic9 .tic9-process .tic-process-line p{font-size:16px;line-height:1.65;color:#475569!important;margin:0;overflow-wrap:break-word}
.tic.tic9 .tic9-faq .tic-faq-row{grid-template-columns:minmax(0,1fr);gap:0;padding:22px 0}
.tic.tic9 .tic9-faq .tic-faq-row>span{display:none}
.tic.tic9 .tic9-faq .tic-faq-row h3{font-size:20px;line-height:1.35}
@media(max-width:900px){
 .tic.tic9 .tic9-intro>.wrap{grid-template-columns:minmax(0,1fr)}
 .tic.tic9 .tic9-service-grid{gap:16px}
 .tic.tic9 .tic9-process-grid{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:700px){
 .tic.tic9>section{padding:38px 0}
 .tic.tic9 .tic9-hero{padding:34px 0}
 .tic.tic9 .tic9-hero h1{font-size:clamp(33px,8vw,46px);line-height:1.1}
 .tic.tic9 .tic9-sub{grid-template-columns:minmax(0,1fr);gap:15px}
 .tic.tic9 .tic9-sub .actions{justify-content:flex-start}
 .tic.tic9 .tic9-hero .tic9-photo{height:235px}
 .tic.tic9 .tic9-service-grid,.tic.tic9 .tic9-benefits{grid-template-columns:minmax(0,1fr)}
 .tic.tic9 .tic9-service .tic9-photo{height:195px}
 .tic.tic9 .tic9-service .tic9-service-copy{padding:22px}
 .tic.tic9 .tic-benefit-mag,.tic.tic9 .tic9-process .tic-process-line{padding:22px}
}.tic.tic10 .tic10-hero{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);min-height:0;align-items:stretch}
.tic.tic10 .tic10-copy{padding:clamp(35px,5vw,78px) clamp(26px,4vw,68px);min-width:0}
.tic.tic10 .tic10-copy h1{font-size:clamp(38px,4.3vw,64px);line-height:1.08;letter-spacing:-.035em;max-width:720px}
.tic.tic10 .tic10-copy p{max-width:580px;line-height:1.65}
.tic.tic10 .tic10-photo{min-height:400px;max-height:610px;background:#dcefeb;display:flex;align-items:center;justify-content:center}
.tic.tic10 .tic10-photo img{width:100%;height:100%;object-fit:contain;object-position:center}
.tic.tic10 .tic10-trust{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:27px}
.tic.tic10 .tic10-trust>*{min-width:0;padding:13px 14px;border:1px solid #d3e5e1;border-radius:8px;background:#ffffffb8}
.tic.tic10 .tic10-services,.tic.tic10 .tic10-process,.tic.tic10 .tic10-faq{padding:64px 0!important}
.tic.tic10 .tic10-services header{margin-bottom:28px}
.tic.tic10 .tic10-services h2,.tic.tic10 .tic10-process h2,.tic.tic10 .tic10-faq h2{font-size:clamp(31px,3.4vw,47px);line-height:1.14;max-width:850px}
.tic.tic10 .tic10-service-list{border-top:1px solid var(--line)}
.tic.tic10 article.tic10-service{display:grid;grid-template-columns:minmax(220px,.85fr) minmax(0,1.4fr) auto;align-items:center;gap:24px;padding:25px 8px;min-width:0}
.tic.tic10 article.tic10-service>div{min-width:0}
.tic.tic10 article.tic10-service h3{font-size:clamp(21px,2.2vw,28px);line-height:1.25;margin:0;color:#142333!important}
.tic.tic10 article.tic10-service p{font-size:16px;line-height:1.6;margin:0;min-width:0;color:#405162!important}
.tic.tic10 article.tic10-service .tic10-service-link{font-size:14px;font-weight:800;color:#087f78!important;text-decoration:none;white-space:nowrap}
.tic.tic10 .tic10-why{padding:64px 0!important;background:#102e39!important;color:#fff!important}
.tic.tic10 .tic10-why>.wrap{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:45px;align-items:start}
.tic.tic10 .tic10-why h2{font-size:clamp(31px,3.2vw,46px);line-height:1.14;color:#fff!important}
.tic.tic10 .tic10-why p{color:#d9e9ed!important;line-height:1.65}
.tic.tic10 .tic10-benefits{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.tic.tic10 .tic10-benefits article.tic-benefit-split{display:flex;flex-direction:column;gap:12px;padding:23px;min-width:0;min-height:165px;border:1px solid #46616c;border-radius:12px;background:#193c48;color:#fff!important}
.tic.tic10 .tic10-benefits .tic10-benefit-mark{display:flex;align-items:center;justify-content:center;width:30px;height:30px;flex:0 0 auto;border-radius:50%;background:#19b9a4;color:#092a32;font-weight:800}
.tic.tic10 .tic10-benefits h3{font-size:20px;line-height:1.25;margin:0 0 8px;color:#fff!important}
.tic.tic10 .tic10-benefits p{font-size:15px;line-height:1.55;margin:0;color:#d9e9ed!important}
.tic.tic10 .tic10-process{background:#f1f8f6}
.tic.tic10 .tic10-process .tic-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:26px}
.tic.tic10 .tic10-process article.tic10-process-card{display:block;min-width:0;min-height:175px;padding:25px;border:1px solid #d2e5df;border-top:5px solid #0e9789;border-radius:12px;background:#fff;box-shadow:0 9px 24px #173e3612}
.tic.tic10 .tic10-process .tic10-process-card h3{font-size:22px;line-height:1.25;color:#142333!important;margin-bottom:12px}
.tic.tic10 .tic10-process .tic10-process-card p{font-size:16px;line-height:1.6;color:#405162!important;margin:0}
.tic.tic10 .tic-area,.tic.tic10 .tic-cta{padding-top:58px!important;padding-bottom:58px!important}
@media(max-width:980px){
 .tic.tic10 .tic10-hero{grid-template-columns:minmax(0,1fr)}
 .tic.tic10 .tic10-photo{min-height:290px;max-height:390px}
 .tic.tic10 .tic10-why>.wrap{grid-template-columns:minmax(0,1fr)}
 .tic.tic10 article.tic10-service{grid-template-columns:minmax(0,1fr) auto;gap:12px}
 .tic.tic10 article.tic10-service p{grid-column:1/-1;grid-row:2}
 .tic.tic10 .tic10-process .tic-process-grid{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:650px){
 .tic.tic10 .tic10-copy{padding:30px 20px}
 .tic.tic10 .tic10-copy h1{font-size:clamp(34px,9vw,45px)}
 .tic.tic10 .tic10-trust{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tic.tic10 .tic10-benefits{grid-template-columns:minmax(0,1fr)}
 .tic.tic10 .tic10-services,.tic.tic10 .tic10-why,.tic.tic10 .tic10-process,.tic.tic10 .tic10-faq{padding:42px 0!important}
 .tic.tic10 article.tic10-service{grid-template-columns:minmax(0,1fr);gap:9px}
 .tic.tic10 article.tic10-service p{grid-column:auto;grid-row:auto}
 .tic.tic10 .tic10-service-link{justify-self:start}
}.tic.tic10 .tic10-why .tic10-benefits article.tic-benefit-split,
.tic.tic10 .tic10-why .tic10-benefits article.tic-benefit-split > div:last-child {
 color:#f8fafc!important;
}
.tic.tic10 .tic10-why .tic10-benefits article.tic-benefit-split h3 {
 color:#ffffff!important;
 -webkit-text-fill-color:#ffffff!important;
}
.tic.tic10 .tic10-why .tic10-benefits article.tic-benefit-split p {
 color:#d9e9ed!important;
 -webkit-text-fill-color:#d9e9ed!important;
}/* General layout resilience inside the selected template families. */
.tic.tic4,.tic.tic5,.tic.tic6,.tic.tic7,.tic.tic8,.tic.tic9,.tic.tic10{overflow-wrap:break-word}
.tic.tic4 .wrap,.tic.tic5 .wrap,.tic.tic6 .wrap,.tic.tic7 .wrap,.tic.tic8 .wrap,.tic.tic9 .wrap,.tic.tic10 .wrap{max-width:1180px}
.tic.tic4 .actions .btn,.tic.tic5 .actions .btn,.tic.tic6 .actions .btn,.tic.tic7 .actions .btn,.tic.tic8 .actions .btn,.tic.tic9 .actions .btn,.tic.tic10 .actions .btn{min-height:44px;font-weight:800;line-height:1.25;text-align:center}
/* Meridian: tighten excessive desktop whitespace without replacing its architecture. */
.tic.tic4 .tic4-hero{grid-template-rows:minmax(365px,auto) auto}
.tic.tic4 .tic4-copy{padding-block:clamp(32px,4vw,58px)}
.tic.tic4 .tic4-image{min-height:315px}
.tic.tic4 .tic4-services,.tic.tic4 .tic4-why,.tic.tic4 .tic4-process,.tic.tic4 .tic4-faq{padding-top:clamp(44px,5vw,70px)!important;padding-bottom:clamp(44px,5vw,70px)!important}
.tic.tic4 .tic4-service-grid{gap:16px}
.tic.tic4 .tic4-photo{height:205px}
/* Onyx: retain its dark identity while increasing secondary-text legibility. */
.tic.tic5 .tic5-service p,.tic.tic5 .tic5-why p,.tic.tic5 .tic5-process p{font-size:clamp(15px,1.2vw,17px);line-height:1.65}
.tic.tic5 .tic5-service{gap:18px}
.tic.tic5 .tic-benefit-dark{border-color:#3b4651;background:#181e25}
/* Oakline: image text must not be cut off by narrow service-card columns. */
.tic.tic6 .tic6-service-photo{overflow:hidden;background:#e8f4ef}
.tic.tic6 .tic6-service-photo img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.tic.tic6 .tic6-service>div:last-child{min-width:0}
/* Sterling: keep editorial typography, remove any remaining standalone section indices. */
.tic.tic7 .tic7-index,.tic.tic7 .tic7-num{display:none!important}
.tic.tic7 .tic7-hero h1{max-width:18ch}
/* Beacon: preserve geometric cards; prevent decorative image crop. */
.tic.tic8 .tic8-hero .tic8-photo img{width:100%;height:100%;object-fit:contain;object-position:center}
.tic.tic8 .tic8-service .tic8-label{display:none!important}
/* Northstar: enforce image containment and readable hero CTA. */
.tic.tic9 .tic9-hero .tic9-photo{isolation:isolate}
.tic.tic9 .tic9-hero .tic9-photo img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.tic.tic9 .tic9-sub .actions .btn{background:#087f79;color:#fff}
/* Summit: keep its split hero and make primary actions more visible. */
.tic.tic10 .tic10-hero .actions .btn{background:#087f79;color:#fff}
.tic.tic10 .tic10-service-link{font-size:15px;font-weight:800}
/* Call-to-action bands: visibly button-shaped on colored surfaces. */
.tic.tic4 section.tic-cta .actions .btn,.tic.tic5 section.tic-cta .actions .btn,.tic.tic6 section.tic-cta .actions .btn,.tic.tic7 section.tic-cta .actions .btn,.tic.tic9 section.tic-cta .actions .btn,.tic.tic10 section.tic-cta .actions .btn{background:#fff!important;color:#086e68!important;border:1px solid #fff!important;padding:13px 20px!important;border-radius:8px!important;min-width:170px}
@media(max-width:900px){
 .tic.tic4 .tic4-hero{grid-template-rows:auto}
 .tic.tic4 .tic4-image{min-height:240px}
 .tic.tic6 .tic6-service-photo{min-height:200px}
}
@media(max-width:650px){
 .tic.tic4 .tic4-services,.tic.tic4 .tic4-why,.tic.tic4 .tic4-process,.tic.tic4 .tic4-faq{padding-top:38px!important;padding-bottom:38px!important}
 .tic.tic4 .tic4-photo{height:195px}
 .tic.tic5 .tic5-service p,.tic.tic5 .tic5-why p,.tic.tic5 .tic5-process p{font-size:15px}
 .tic.tic6 .tic6-service-photo{min-height:180px}
 .tic.tic7 .tic7-hero h1{max-width:none}
}@media (min-width:1100px){
 .tic.tic1 .wrap,.tic.tic2 .wrap,.tic.tic3 .wrap,.tic.tic4 .wrap,.tic.tic5 .wrap,
 .tic.tic6 .wrap,.tic.tic7 .wrap,.tic.tic8 .wrap,.tic.tic9 .wrap,.tic.tic10 .wrap{
   width:calc(100% - clamp(48px,6vw,112px))!important;
   max-width:1760px!important;
   margin-inline:auto!important;
 }
 .tic.tic1 .tic-hero-copy,.tic.tic2 .tic-hero-copy,.tic.tic3 .tic-hero-copy,
 .tic.tic4 .tic-hero-copy,.tic.tic5 .tic-hero-copy,.tic.tic6 .tic-hero-copy,
 .tic.tic7 .tic-hero-copy,.tic.tic8 .tic-hero-copy,.tic.tic9 .tic-hero-copy,
 .tic.tic10 .tic-hero-copy{min-width:0}
 .tic.tic4 .tic4-copy{padding-inline:clamp(32px,5vw,100px)}
 .tic.tic4 .tic4-meta{padding-inline:clamp(32px,5vw,100px)}
 .tic.tic10 .tic10-copy{min-width:0}
}
@media (min-width:1800px){
 .tic.tic1 .wrap,.tic.tic2 .wrap,.tic.tic3 .wrap,.tic.tic4 .wrap,.tic.tic5 .wrap,
 .tic.tic6 .wrap,.tic.tic7 .wrap,.tic.tic8 .wrap,.tic.tic9 .wrap,.tic.tic10 .wrap{
  width:calc(100% - 112px)!important
 }
}
/* 4.7G: isolated design system; only IDs 11–20. */
.g47{--g-bg:#fff;--g-ink:#142332;--g-accent:var(--p,#087f79);--g-soft:#f1f5f4;color:var(--g-ink);background:var(--g-bg)}
.g47 .g47-inner{width:calc(100% - clamp(32px,6vw,112px));max-width:1760px;margin-inline:auto}
.g47>section{padding:clamp(56px,6vw,110px) 0}.g47 .g47-hero{padding:0;position:relative;overflow:hidden}
.g47 h1{font-size:clamp(46px,5.5vw,100px);line-height:1.04;letter-spacing:-.05em;max-width:1000px;margin:16px 0 24px}
.g47 h2{font-size:clamp(30px,3.3vw,58px);line-height:1.1;letter-spacing:-.035em;margin:12px 0 28px}
.g47 h3{font-size:clamp(20px,1.6vw,27px);line-height:1.2;margin:0 0 12px}
.g47 p{font-size:clamp(15px,1.04vw,18px);line-height:1.7;max-width:75ch}.g47 .g47-ey{font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:850;color:var(--g-accent)}
.g47 .g47-copy>p{font-size:clamp(17px,1.25vw,22px);max-width:640px}.g47 .g47-actions{display:flex;gap:12px;margin-top:28px}.g47 .btn{padding:15px 25px;font-size:16px;border-radius:7px;background:var(--g-accent);color:#fff;text-decoration:none}
.g47 .g47-hero-photo img,.g47 .g47-service-photo img,.g47 .g47-area-photo img{width:100%;height:100%;object-fit:contain;background:var(--g-soft)}
.g47 .g47-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.g47 .g47-service{min-width:0;background:#fff;overflow:hidden;border:1px solid #dce4e7}.g47 .g47-service-photo{height:clamp(170px,17vw,290px);overflow:hidden;background:var(--g-soft)}.g47 .g47-service-text{padding:clamp(18px,2vw,30px)}.g47 .g47-service-text p{font-size:15px}.g47 .g47-service-text a{font-size:15px;font-weight:800;color:var(--g-accent)}
.g47 .g47-why{background:var(--g-soft)}.g47 .g47-why>.g47-inner{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(28px,5vw,100px);align-items:center}.g47 .g47-benefit-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.g47 .g47-benefit{padding:28px;background:#fff;border:1px solid #dfe6e7}.g47 .g47-benefit p{font-size:15px}
.g47 .g47-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.g47 .g47-step{padding:32px;border-top:4px solid var(--g-accent);background:var(--g-soft)}
.g47 .g47-area>.g47-inner{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center}.g47 .g47-area-photo{height:420px}.g47 .g47-area .btn{display:inline-flex;margin-top:18px}
.g47 .g47-cta{background:var(--g-accent);color:#fff}.g47 .g47-cta>.g47-inner{display:flex;align-items:center;justify-content:space-between;gap:28px}.g47 .g47-cta .g47-ey{color:#fff}.g47 .g47-cta .btn{background:#fff;color:#132433;flex-shrink:0}
.g47 .g47-questions{max-width:1050px}.g47 .g47-question{padding:20px 0;border-bottom:1px solid #dce4e7}.g47 .g47-question summary{font-weight:750;font-size:17px;cursor:pointer}.g47 .g47-question p{margin:12px 0 0}
.g47 .g47-contact>.g47-inner{display:grid;grid-template-columns:1fr 1fr;gap:6vw}.g47 .g47-map{padding-top:0}.g47 .g47-map .demo-map{padding:0}.g47 .g47-map .demo-map-art{height:300px}
/* Distinct hero composition and individual art direction */
.g47-11 .g47-hero{min-height:720px;background:#102630;color:#fff;display:flex;align-items:center}.g47-11 .g47-hero>.g47-hero-photo{position:absolute;inset:0}.g47-11 .g47-hero-photo img{object-fit:cover;opacity:.47}.g47-11 .g47-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#061a25e8 0%,#061a25a6 55%,transparent)}.g47-11 .g47-hero>.g47-inner{position:relative;padding:100px 0;z-index:1}.g47-11 .g47-copy{max-width:820px}.g47-11 .g47-ey{color:#8be3d6}.g47-11 .g47-float{position:absolute;right:4vw;bottom:35px;padding:18px 28px;background:#fff;color:#122d38;font-weight:800}.g47-11 .g47-float span{font-weight:400}
.g47-12{--g-bg:#fbf8f1;--g-soft:#f0eae0;--g-ink:#2e332d;--g-accent:#516a52}.g47-12 h1,.g47-12 h2{font-family:Georgia,serif;letter-spacing:-.04em;font-weight:500}.g47-12 .g47-hero>.g47-inner{display:grid;grid-template-columns:110px 1fr 1fr;gap:4vw;align-items:center;min-height:700px}.g47-12 .g47-side-label{writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:.2em;font-size:12px}.g47-12 .g47-hero-photo{height:600px}.g47-12 .g47-service{border:0;border-bottom:1px solid #b8c4b6;background:transparent}
.g47-13{--g-bg:#f7f7f4;--g-soft:#e5e5e1;--g-ink:#151a1c;--g-accent:#a44d20}.g47-13 .g47-hero{background:#161e23;color:#fff}.g47-13 .g47-hero>.g47-inner{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:auto 1fr;gap:20px 50px;min-height:650px;align-items:center}.g47-13 .g47-industrial-label{grid-column:1/-1;padding-top:25px;letter-spacing:.18em;font-weight:900}.g47-13 .g47-hero-photo{height:500px}.g47-13 h1,.g47-13 h2{text-transform:uppercase;font-weight:900}.g47-13 .g47-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.g47-13 .g47-service{display:grid;grid-template-columns:45% 55%}.g47-13 .g47-service-photo{height:100%}
.g47-14{--g-soft:#e9eff1;--g-ink:#1b2e39;--g-accent:#245d73}.g47-14 .g47-hero>.g47-inner{display:grid;grid-template-columns:1.05fr .95fr;grid-template-rows:580px 50px;gap:20px;align-items:stretch;padding-top:35px}.g47-14 .g47-hero-photo{grid-column:1;grid-row:1}.g47-14 .g47-hero-panel{grid-column:2;grid-row:1;background:var(--g-soft);padding:clamp(30px,5vw,80px);display:flex;align-items:center}.g47-14 .g47-grid-label{grid-column:1/-1;letter-spacing:.22em;font-size:12px}.g47-14 .g47-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.g47-14 .g47-service{display:grid;grid-template-columns:1fr 1fr}
.g47-15{--g-bg:#101b23;--g-soft:#1b303c;--g-ink:#f4f0e9;--g-accent:#c6a56a}.g47-15 .g47-hero>.g47-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:4vw;min-height:720px;align-items:center}.g47-15 .g47-premium-top{grid-column:1/-1;align-self:end;letter-spacing:.22em;text-transform:uppercase;font-size:12px}.g47-15 .g47-hero-photo{height:480px}.g47-15 h1,.g47-15 h2{font-family:Georgia,serif;font-weight:400}.g47-15 .g47-benefit,.g47-15 .g47-service{background:#172833;border-color:#35505b}.g47-15 .g47-why{background:#172833}.g47-15 .g47-cta .btn{color:#182831}.g47-15 .g47-question{border-color:#35505b}
.g47-16{--g-bg:#fffdf6;--g-soft:#eaf0df;--g-ink:#334135;--g-accent:#53724d}.g47-16 .g47-hero>.g47-inner{min-height:700px;display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:center;position:relative}.g47-16 .g47-organic-badge{grid-column:1/-1;align-self:end;font-family:Georgia,serif;font-style:italic;font-size:23px}.g47-16 .g47-hero-photo{height:500px;border-radius:220px 220px 22px 22px;overflow:hidden}.g47-16 .g47-service,.g47-16 .g47-benefit,.g47-16 .g47-step{border-radius:20px;overflow:hidden}.g47-16 h1,.g47-16 h2{font-family:Georgia,serif;letter-spacing:-.035em}
.g47-17{--g-bg:#fff;--g-soft:#f2f2f2;--g-ink:#171717;--g-accent:#171717}.g47-17 .g47-hero{display:grid;grid-template-columns:1fr 37%;min-height:700px}.g47-17 .g47-hero>.g47-inner{padding:65px 5vw 65px 6vw;width:100%;max-width:none}.g47-17 .g47-swiss-rail{font-size:13px;text-transform:uppercase;letter-spacing:.15em;margin-bottom:70px}.g47-17 .g47-hero-photo{height:100%}.g47-17 .g47-service-grid{grid-template-columns:1fr;gap:0}.g47-17 .g47-service{display:grid;grid-template-columns:180px 1fr;border:0;border-top:1px solid #bbb}.g47-17 .g47-service-photo{height:140px}.g47-17 .g47-service-text{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:20px}.g47-17 .g47-service-text h3{margin:0}
.g47-18{--g-bg:#faf8f2;--g-soft:#e6edfb;--g-ink:#15294d;--g-accent:#d34c32}.g47-18 .g47-hero{background:#f0c84c}.g47-18 .g47-hero>.g47-inner{display:grid;grid-template-columns:1fr 1fr;gap:4vw;align-items:center;min-height:700px;position:relative}.g47-18 .g47-block{position:absolute;width:180px;height:180px;background:#e5574b;right:35%;top:0;transform:rotate(20deg)}.g47-18 .g47-copy,.g47-18 .g47-hero-photo{position:relative;z-index:1}.g47-18 .g47-hero-photo{height:490px;transform:rotate(3deg);box-shadow:20px 20px 0 #193452}.g47-18 .g47-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.g47-18 .g47-service:nth-child(2n){background:#f6e4dc}
.g47-19{--g-bg:#fbfaf8;--g-soft:#edeae5;--g-ink:#26211e;--g-accent:#8c422e}.g47-19 h1,.g47-19 h2{font-family:Georgia,serif;font-weight:500}.g47-19 .g47-hero>.g47-inner{display:grid;grid-template-columns:1fr 1fr;gap:25px 5vw;align-items:center;padding:40px 0 65px}.g47-19 .g47-mag-kicker{grid-column:1/-1;border-bottom:2px solid #26211e;padding-bottom:15px;font-size:13px;letter-spacing:.2em}.g47-19 .g47-hero-photo{height:550px}.g47-19 .g47-mag-note{grid-column:1/-1;text-align:right;font-size:13px;letter-spacing:.15em}.g47-19 .g47-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.g47-19 .g47-service:nth-child(3n){grid-column:span 2;display:grid;grid-template-columns:1fr 1fr}
.g47-20{--g-bg:#f8fbfc;--g-soft:#e6f2f4;--g-ink:#123344;--g-accent:#0b7184}.g47-20 .g47-hero{background:#e6f2f4}.g47-20 .g47-hero>.g47-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:25px 4vw;align-items:center;padding:60px 0}.g47-20 .g47-phone-label{grid-column:1/-1;font-weight:900;letter-spacing:.15em;font-size:13px}.g47-20 .g47-phone-panel{grid-column:1;padding:25px;background:#fff;border-left:5px solid var(--g-accent);display:flex;align-items:center;gap:20px;flex-wrap:wrap}.g47-20 .g47-phone-panel p{margin:0;flex:1}.g47-20 .g47-hero-photo{grid-column:2;grid-row:2/4;height:540px}.g47-20 .g47-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.g47-20 .g47-service{display:grid;grid-template-columns:42% 58%}
@media(max-width:1050px){.g47 .g47-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.g47 .g47-why>.g47-inner{grid-template-columns:1fr}.g47-12 .g47-hero>.g47-inner{grid-template-columns:1fr 1fr}.g47-12 .g47-side-label{display:none}.g47-17 .g47-service-text{grid-template-columns:1fr}}
@media(max-width:700px){.g47 .g47-inner{width:calc(100% - 32px)}.g47 h1{font-size:clamp(38px,10vw,60px)}.g47 h2{font-size:clamp(29px,8vw,42px)}.g47>section{padding:50px 0}.g47 .g47-service-grid,.g47 .g47-benefit-grid,.g47 .g47-steps,.g47 .g47-area>.g47-inner,.g47 .g47-contact>.g47-inner{grid-template-columns:1fr}.g47 .g47-cta>.g47-inner{display:block}.g47 .g47-hero>.g47-inner,.g47-12 .g47-hero>.g47-inner,.g47-13 .g47-hero>.g47-inner,.g47-14 .g47-hero>.g47-inner,.g47-15 .g47-hero>.g47-inner,.g47-16 .g47-hero>.g47-inner,.g47-18 .g47-hero>.g47-inner,.g47-19 .g47-hero>.g47-inner,.g47-20 .g47-hero>.g47-inner{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:38px 0;gap:22px}.g47 .g47-hero-photo{height:280px!important;min-height:280px}.g47-11 .g47-hero{min-height:560px}.g47-11 .g47-hero>.g47-hero-photo{height:100%!important;position:absolute}.g47-11 .g47-hero>.g47-inner{padding:90px 0}.g47-11 .g47-float{display:none}.g47-17 .g47-hero{display:flex;flex-direction:column}.g47-17 .g47-hero>.g47-inner{padding:38px 16px}.g47-17 .g47-swiss-rail{margin-bottom:25px}.g47-14 .g47-hero-panel{padding:25px}.g47-20 .g47-phone-panel{display:block}.g47-20 .g47-phone-panel .btn{margin-top:15px}.g47-13 .g47-service,.g47-14 .g47-service,.g47-17 .g47-service,.g47-19 .g47-service:nth-child(3n),.g47-20 .g47-service{display:block;grid-column:auto}.g47-18 .g47-block{display:none}.g47-18 .g47-hero-photo{transform:none;box-shadow:none}.g47 .g47-area-photo{height:280px}}

/* Phase 4.7G-04: Template 15 contrast repair; all rules scoped to Regent. */
.g47-15 .g47-benefit,.g47-15 .g47-service,.g47-15 .g47-step{color:#f4f0e9;background:#203541;border-color:#45606d}
.g47-15 .g47-benefit h3,.g47-15 .g47-benefit p,.g47-15 .g47-service h3,.g47-15 .g47-service p,.g47-15 .g47-step h3,.g47-15 .g47-step p{color:#f4f0e9!important;opacity:1}
.g47-15 .g47-service-text a{color:#efd194!important;text-decoration:underline;text-underline-offset:3px}
.g47-15 .g47-why .g47-benefit{background:#243b47}
.g47-15 .g47-contact .lead-card,.g47-15 .g47-contact .lead-box,.g47-15 .g47-contact .call-card,.g47-15 .g47-contact [class*="lead-card"],.g47-15 .g47-contact [class*="call-card"]{background:#fff;color:#172832}
.g47-15 .g47-contact .lead-card :is(h2,h3,h4,p,small,strong,span),.g47-15 .g47-contact .lead-box :is(h2,h3,h4,p,small,strong,span),.g47-15 .g47-contact .call-card :is(h2,h3,h4,p,small,strong,span){color:#172832!important;opacity:1}
.g47-15 .g47-contact .lead-card .btn,.g47-15 .g47-contact .lead-box .btn,.g47-15 .g47-contact .call-card .btn{color:#172832!important;background:#c6a56a}
.g47-15 .g47-map .g47-inner>h2,.g47-15 .g47-map .g47-inner>h3{color:#f4f0e9}
.g47-15 .g47-map .demo-map,.g47-15 .g47-map .demo-map :is(h2,h3,p,small,span){color:#172832!important}
.g47-15 .g47-map .demo-map{background:#fff}
/* The shared lead and map components use their own class names; ensure text on white panels is dark. */
.g47-15 .g47-contact .g47-inner> :last-child:not(:first-child){color:#172832}
.g47-15 .g47-contact .g47-inner> :last-child:not(:first-child) :is(h2,h3,h4,p,small,strong,span,label){color:#172832!important;opacity:1}
.g47-15 .g47-contact .g47-inner> :last-child:not(:first-child) .btn{color:#172832!important}
.g47-15 .g47-map .g47-inner> :first-child :is(h2,h3){color:#172832}
/* Phase 4.7G-05: Regent-specific explicit contrast; overrides preview/global card styles. */
.g47.g47-15 .g47-why .g47-benefit,
.g47.g47-15 .g47-services .g47-service,
.g47.g47-15 .g47-process .g47-step{background:#263f4c!important;border-color:#58717b!important;color:#f8f4eb!important}
.g47.g47-15 .g47-why .g47-benefit *,
.g47.g47-15 .g47-services .g47-service-text *,
.g47.g47-15 .g47-process .g47-step *{color:#f8f4eb!important;opacity:1!important;text-shadow:none!important}
.g47.g47-15 .g47-services .g47-service-text a{color:#f6d58f!important;text-decoration:underline!important}
.g47.g47-15 .g47-why .g47-benefit h3,
.g47.g47-15 .g47-services .g47-service-text h3,
.g47.g47-15 .g47-process .g47-step h3{font-weight:750!important}
.g47.g47-15 .g47-map .g47-inner>div:first-child{background:#fff;color:#172832!important}
.g47.g47-15 .g47-map .g47-inner>div:first-child :is(h1,h2,h3,p,small,span){color:#172832!important;opacity:1!important}
/* Phase 4.7G-04: Template 19 consistent editorial service cards. */
.g47-19 .g47-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:22px}
.g47-19 .g47-service,.g47-19 .g47-service:nth-child(3n){display:flex;flex-direction:column;grid-column:auto;min-width:0;background:#fff}
.g47-19 .g47-service-photo,.g47-19 .g47-service:nth-child(3n) .g47-service-photo{height:clamp(210px,20vw,340px);width:100%;flex:none}
.g47-19 .g47-service-photo img{display:block;width:100%;height:100%;object-fit:contain}
.g47-19 .g47-service-text{display:flex;flex-direction:column;align-items:flex-start;flex:1;gap:10px;padding:clamp(22px,2.3vw,34px)}
.g47-19 .g47-service-text h3{margin:0;font-size:clamp(22px,1.8vw,30px)}
.g47-19 .g47-service-text p{font-size:clamp(15px,1.05vw,18px);line-height:1.6;margin:0 0 8px}
.g47-19 .g47-service-text a{margin-top:auto;font-size:15px}
@media(max-width:700px){.g47-19 .g47-service-grid{grid-template-columns:1fr}.g47-19 .g47-service-photo,.g47-19 .g47-service:nth-child(3n) .g47-service-photo{height:230px}}
.tic.tic2 .tic2-faq > .wrap {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:clamp(24px,4vw,64px);
  align-items:start;
}
.tic.tic2 .tic2-faq .tic2-heading {
  grid-column:1/-1;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:10px;
  min-width:0;
  width:100%;
  margin-bottom:24px;
}
.tic.tic2 .tic2-faq .tic2-heading h2 {
  max-width:none;
  overflow-wrap:normal;
  word-break:normal;
  font-size:clamp(30px,3.2vw,46px);
  line-height:1.15;
}
.tic.tic2 .tic2-faq .tic-faq-row {
  min-width:0;
  width:100%;
  padding:22px 0;
}
.tic.tic2 .tic2-faq .tic-faq-row h3 {
  font-size:clamp(19px,1.6vw,23px);
  line-height:1.35;
  overflow-wrap:break-word;
}
.tic.tic2 .tic2-faq .tic-faq-row p {
  font-size:16px;
  line-height:1.7;
  overflow-wrap:break-word;
}
@media(max-width:760px) {
  .tic.tic2 .tic2-faq > .wrap {grid-template-columns:minmax(0,1fr)}
  .tic.tic2 .tic2-faq .tic2-heading h2 {font-size:clamp(29px,7vw,40px)}
}@media(min-width:901px){
 .tic.tic7 .tic7-hero .tic7-hero-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,4vw,72px);align-items:center}
 .tic.tic7 .tic7-hero .tic-hero-copy{min-width:0;max-width:none}
 .tic.tic7 .tic7-hero .tic7-hero-media{min-width:0}
 .tic.tic7 .tic7-hero .tic7-hero-media img.tic-hero-img{display:block;width:100%;height:clamp(310px,33vw,520px);max-height:none;object-fit:cover;object-position:center}
 .tic.tic7 .tic7-hero .tic7-meta{margin-top:clamp(25px,3vw,48px)}
 .tic.tic7 .tic7-services .tic7-service{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) auto;column-gap:clamp(18px,3vw,48px);row-gap:10px;align-items:start;width:100%}
 .tic.tic7 .tic7-services .tic7-service>h3{grid-column:1;min-width:0;overflow-wrap:anywhere}
 .tic.tic7 .tic7-services .tic7-service>p{grid-column:2;min-width:0;max-width:none;overflow-wrap:break-word}
 .tic.tic7 .tic7-services .tic7-service>a{grid-column:3;justify-self:end;white-space:nowrap}
 .tic.tic7 .tic7-process .tic-process-line{display:grid;grid-template-columns:minmax(0,1fr);width:100%;padding:28px 0}
 .tic.tic7 .tic7-process .tic-process-line>div{max-width:none;width:100%;min-width:0}
 .tic.tic7 .tic7-process .tic-process-line p{max-width:90ch}
}
@media(max-width:900px){
 .tic.tic7 .tic7-hero .tic7-hero-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
 .tic.tic7 .tic7-hero .tic7-hero-media img.tic-hero-img{display:block;width:100%;height:auto;max-height:420px;object-fit:cover}
 .tic.tic7 .tic7-services .tic7-service{width:100%;min-width:0}
 .tic.tic7 .tic7-process .tic-process-line>div{max-width:none}
}@media(min-width:901px){
 /* Balance the long introduction against the right-side empty area. */
 .tic.tic7 .tic7-why>.wrap{display:block}




 /* Give each process step a heading and a readable description column. */
 .tic.tic7 .tic7-process .tic-process-line{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(22px,4vw,64px);align-items:start}
 .tic.tic7 .tic7-process .tic-process-line>div{display:contents}
 .tic.tic7 .tic7-process .tic-process-line h3{grid-column:1;margin:0;max-width:28ch}
 .tic.tic7 .tic7-process .tic-process-line p{grid-column:2;max-width:72ch;margin:0;min-width:0}
}
/* Keep uploaded logos contained in their header/footer slots, not cropped. */
body:has(.tic.tic7) header .awb-studio-logo,
body:has(.tic.tic7) footer .awb-studio-logo{display:flex;align-items:center;min-width:0;max-width:100%;overflow:hidden}
body:has(.tic.tic7) header .awb-studio-logo-img,
body:has(.tic.tic7) footer .awb-studio-logo-img{display:block;width:auto!important;height:auto!important;max-width:min(100%,190px)!important;max-height:58px!important;object-fit:contain!important;object-position:left center}
body:has(.tic.tic7) header .logo,
body:has(.tic.tic7) footer .logo{min-width:0;max-width:100%}
@media(max-width:900px){
 .tic.tic7 .tic7-why>.wrap{display:block}
 .tic.tic7 .tic7-process .tic-process-line{display:block}
 .tic.tic7 .tic7-process .tic-process-line>div{display:block}
 .tic.tic7 .tic7-process .tic-process-line p{max-width:72ch;margin-top:10px}
 body:has(.tic.tic7) header .awb-studio-logo-img{max-height:48px!important;max-width:min(100%,150px)!important}
}.tic.tic7 .tic7-why .tic7-why-introduction{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,4vw,64px);align-items:start;margin:16px 0 30px}
.tic.tic7 .tic7-why .tic7-why-introduction>h2{min-width:0;max-width:23ch;margin:0;overflow-wrap:break-word}
.tic.tic7 .tic7-why .tic7-why-introduction>.tic7-intro{min-width:0;max-width:72ch;margin:0;font-size:clamp(16px,1.2vw,18px);line-height:1.7}
.tic.tic7 .tic7-why .tic-benefit-line{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,4vw,64px);align-items:start}
/* CTA: reduce excess height without losing a readable text column. */
.tic.tic7 section.tic-cta{padding-block:clamp(42px,4.4vw,68px)!important;min-height:0!important}
.tic.tic7 section.tic-cta>.wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(22px,4vw,65px);align-items:center}
.tic.tic7 section.tic-cta h2{font-size:clamp(30px,3.5vw,49px);line-height:1.08;max-width:19ch;margin:12px 0 14px}
.tic.tic7 section.tic-cta p{max-width:67ch;margin:0;font-size:clamp(15px,1.2vw,18px);line-height:1.6}
.tic.tic7 section.tic-cta .actions{display:flex;align-items:center;justify-content:flex-end;min-width:0;margin:0}
.tic.tic7 section.tic-cta .actions .btn{white-space:normal;text-align:center}
/* Home-page logo: fit the real header slot, slightly more visible. */
body:has(main.tic.tic7) header a.logo.awb-studio-logo{display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;flex:0 1 205px!important;max-width:min(205px,100%)!important;min-width:0!important;overflow:hidden!important}
body:has(main.tic.tic7) header a.logo.awb-studio-logo img.awb-studio-logo-img{display:block!important;width:205px!important;max-width:100%!important;height:72px!important;max-height:72px!important;object-fit:contain!important;object-position:left center!important}
/* Inner pages do not contain main.tic7; safely contain uploaded logo images
   without modifying the unique designs or header heights of other templates. */
header a.logo.awb-studio-logo{min-width:0!important;max-width:100%!important;overflow:hidden!important}
header a.logo.awb-studio-logo img.awb-studio-logo-img{display:block!important;max-width:100%!important;object-fit:contain!important;object-position:left center!important}
@media(max-width:900px){
 .tic.tic7 .tic7-why .tic7-why-introduction{grid-template-columns:minmax(0,1fr);gap:14px}
 .tic.tic7 .tic7-why .tic-benefit-line{grid-template-columns:minmax(0,1fr);gap:12px}
 .tic.tic7 section.tic-cta>.wrap{grid-template-columns:minmax(0,1fr)}
 .tic.tic7 section.tic-cta .actions{justify-content:flex-start}
 body:has(main.tic.tic7) header a.logo.awb-studio-logo{flex-basis:170px!important;max-width:min(170px,100%)!important}
 body:has(main.tic.tic7) header a.logo.awb-studio-logo img.awb-studio-logo-img{width:170px!important;height:60px!important;max-height:60px!important}
}
@media(max-width:600px){
 .tic.tic7 section.tic-cta{padding-block:38px!important}
 body:has(main.tic.tic7) header a.logo.awb-studio-logo{flex-basis:min(42vw,155px)!important;max-width:min(42vw,155px)!important}
 body:has(main.tic.tic7) header a.logo.awb-studio-logo img.awb-studio-logo-img{width:100%!important;height:55px!important;max-height:55px!important}
}
.tic.tic1 section.tic1-why > .wrap {
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:clamp(22px,3vw,42px)!important;
  align-items:start!important;
}
.tic.tic1 section.tic1-why .tic1-why-intro {
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  padding:0 0 clamp(18px,2vw,30px)!important;
  border-bottom:1px solid rgba(255,255,255,.22);
}
.tic.tic1 section.tic1-why .tic1-why-intro > h2 {
  max-width:100%!important;
  font-size:clamp(28px,3vw,46px)!important;
  line-height:1.15!important;
  overflow-wrap:break-word;
}
.tic.tic1 section.tic1-why .tic1-why-intro > p {
  max-width:100%!important;
  width:100%!important;
  line-height:1.7!important;
}
.tic.tic1 section.tic1-why .tic1-why-benefits {
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  column-gap:clamp(24px,4vw,64px)!important;
  row-gap:12px!important;
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
}
.tic.tic1 section.tic1-why .tic1-why-benefits > article.tic-benefit-story {
  display:block!important;
  min-width:0!important;
  width:auto!important;
  grid-column:auto!important;
  padding:22px 0!important;
  margin:0!important;
  background:transparent!important;
  border-top:1px solid rgba(255,255,255,.24)!important;
}
.tic.tic1 section.tic1-why .tic1-why-benefits > article.tic-benefit-story > span {display:none!important}
.tic.tic1 section.tic1-why .tic1-why-benefits > article.tic-benefit-story > div {
  display:block!important;
  width:100%!important;
  min-width:0!important;
  grid-column:auto!important;
}
.tic.tic1 section.tic1-why .tic1-why-benefits > article.tic-benefit-story h3 {
  margin:0 0 12px!important;
  line-height:1.3!important;
}
.tic.tic1 section.tic1-why .tic1-why-benefits > article.tic-benefit-story p {
  margin:0!important;
  line-height:1.65!important;
}
@media(max-width:700px){
  .tic.tic1 section.tic1-why .tic1-why-benefits {
    grid-template-columns:minmax(0,1fr)!important;
  }
}
.tic.tic1 section.tic1-why > .wrap {
  box-sizing:border-box!important;
  padding:40px 48px!important;
}
.tic.tic1 section.tic1-why .tic1-why-intro,
.tic.tic1 section.tic1-why .tic1-why-benefits {
  box-sizing:border-box!important;
  min-width:0!important;
}
.tic.tic1 section.tic1-why .tic1-why-intro > .eyebrow,
.tic.tic1 section.tic1-why .tic1-why-intro > h2,
.tic.tic1 section.tic1-why .tic1-why-intro > p {
  overflow-wrap:break-word;
}
@media(max-width:700px){
  .tic.tic1 section.tic1-why > .wrap {
    padding:28px 20px!important;
  }
}/* Contain content in template-owned layouts without rewriting their geometry. */
.tic, .tic * , .tic *::before, .tic *::after { box-sizing:border-box; }
.tic :is(.wrap, article, figure, [class*="copy"], [class*="intro"], [class*="benefit"], [class*="service"], [class*="process"]) { min-width:0; }
.tic :is(h1,h2,h3,h4,p,li,blockquote) { overflow-wrap:break-word; }
.tic img { max-width:100%; }
.tic :is(.tic-service-img,.tic-hero-img,.tic-area-img) { display:block; }
@media (max-width:700px) {
  .tic :is(.tic-process-grid,.tic-process-card) { min-width:0; }
  .tic :is(h1,h2,h3,h4,p) { max-width:100%; }
}/* Phase 3.15.0 — composable homepage components */
.comp-site{--comp-gap:clamp(56px,7vw,100px);color:var(--ink)}
.comp-site section{padding:var(--comp-gap) 0}.comp-site .wrap{width:min(1180px,calc(100% - 48px));margin:auto}
.comp-site h1{font-size:clamp(42px,4.2vw,62px)!important;line-height:1.02!important;letter-spacing:-.04em!important;max-width:15ch}
.comp-site h2{font-size:clamp(30px,3vw,44px)!important;line-height:1.08!important;letter-spacing:-.025em}
.comp-site h3{font-size:clamp(18px,1.35vw,22px)!important}.comp-site p{line-height:1.72}
.comp-hero-1>.wrap{display:grid;grid-template-columns:.95fr 1.05fr;gap:70px;align-items:center}.comp-hero-media{min-height:500px}.comp-hero-media img,.comp-hero-wide img,.comp-area-media img,.comp-service-media img{width:100%;height:100%;object-fit:cover}
.comp-hero-2{position:relative;min-height:680px;display:flex;align-items:end;color:#fff;overflow:hidden}.comp-hero-2>.comp-hero-media{position:absolute;inset:0}.comp-hero-2>.comp-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#07131bd9 0 48%,#07131b30)}.comp-hero-2>.wrap{position:relative;padding-bottom:90px}.comp-hero-2 .comp-hero-copy{max-width:650px}.comp-hero-2 h1,.comp-hero-2 p{color:#fff!important}
.comp-hero-3{padding-bottom:0!important}.comp-hero-3>.wrap{max-width:900px;margin-bottom:55px}.comp-hero-wide{height:520px}.comp-hero-wide img{border-radius:0}
.comp-hero-4>.wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:0;align-items:center}.comp-hero-frame{padding:55px;background:var(--s);color:#fff;position:relative;z-index:2;margin-right:-50px}.comp-hero-frame h1,.comp-hero-frame p{color:#fff!important}.comp-hero-4 .comp-hero-media{height:570px}
.comp-section-head{display:grid;grid-template-columns:.75fr 1.25fr;gap:60px;align-items:start;margin-bottom:48px}.comp-section-head p{margin-top:8px}
.comp-service-list{display:grid;gap:22px}.comp-service-card{background:#fff;border:1px solid var(--line);overflow:hidden}.comp-service-media{height:230px}.comp-service-copy{padding:25px}.comp-service-copy small{color:var(--p);font-weight:800}.comp-service-copy a{font-weight:800;color:var(--p)}
.comp-services-1 .comp-service-list{grid-template-columns:repeat(3,1fr)}.comp-services-2 .comp-service-list{grid-template-columns:1.3fr .85fr .85fr}.comp-services-2 .comp-service-card:first-child{grid-row:span 2}.comp-services-2 .comp-service-card:first-child .comp-service-media{height:360px}
.comp-services-3 .comp-service-card{display:grid;grid-template-columns:260px 1fr}.comp-services-3 .comp-service-media{height:100%;min-height:210px}.comp-services-4 .comp-service-list{grid-template-columns:1fr 1fr}.comp-services-4 .comp-service-card{display:grid;grid-template-columns:.85fr 1.15fr}
.comp-why{background:color-mix(in srgb,var(--p) 7%,#fff)}.comp-why>.wrap{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px}.comp-benefit-list{display:grid;grid-template-columns:1fr 1fr}.comp-benefit-list article{padding:28px;border-top:1px solid color-mix(in srgb,var(--p) 22%,transparent)}.comp-benefit-list span{font-weight:900;color:var(--p)}
.comp-why-2{background:var(--s);color:#fff}.comp-why-2 h2,.comp-why-2 h3,.comp-why-2 p{color:#fff!important}.comp-why-2 .comp-benefit-list article{border-color:#ffffff30}.comp-why-2 .comp-benefit-list span{color:var(--a)}
.comp-why-3>.wrap{grid-template-columns:1fr}.comp-why-3 .comp-why-intro{max-width:760px}.comp-why-3 .comp-benefit-list{grid-template-columns:repeat(3,1fr);gap:18px}.comp-why-3 .comp-benefit-list article{background:#fff;border:1px solid var(--line)}
.comp-why-4 .comp-benefit-list{display:block}.comp-why-4 .comp-benefit-list article{display:grid;grid-template-columns:55px .75fr 1.25fr;gap:20px}
.comp-step-list{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.comp-step-list article{padding:28px;border-top:3px solid var(--a)}.comp-step-list b{color:var(--p)}
.comp-process-2 .comp-step-list{display:block}.comp-process-2 .comp-step-list article{display:grid;grid-template-columns:90px 1fr;padding:28px 0;border-top:1px solid var(--line)}
.comp-process-3 .comp-step-list article{background:color-mix(in srgb,var(--p) 6%,#fff);border:0;border-radius:18px}.comp-process-4 .comp-step-list{grid-template-columns:1fr}.comp-process-4 .comp-step-list article{display:grid;grid-template-columns:100px 1fr;border-top:1px solid var(--ink)}
.comp-area>.wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}.comp-area-media{height:400px}.comp-area-2{background:color-mix(in srgb,var(--a) 9%,#fff)}.comp-area-2>.wrap{grid-template-columns:1.2fr .8fr}.comp-area-2 .comp-area-media{order:-1}.comp-area-3>.wrap{grid-template-columns:1fr}.comp-area-3 .comp-area-media{height:460px}
.comp-cta{background:var(--p);color:#fff}.comp-cta>.wrap{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center}.comp-cta h2,.comp-cta p{color:#fff!important}.comp-cta-2{background:var(--s)}.comp-cta-3>.wrap{max-width:900px;text-align:center;display:block}.comp-cta-3 .actions{justify-content:center}
.comp-faq-list{max-width:900px}.comp-faq-list details{border-bottom:1px solid var(--line);padding:18px 0}.comp-faq-list summary{font-weight:800;display:flex;justify-content:space-between;cursor:pointer}.comp-faq-2>.wrap{display:grid;grid-template-columns:.6fr 1.4fr;gap:70px}.comp-faq-2 .comp-section-head{display:block}.comp-faq-3{background:color-mix(in srgb,var(--a) 7%,#fff)}.comp-faq-3 .comp-faq-list{display:grid;grid-template-columns:1fr 1fr;gap:15px;max-width:none}.comp-faq-3 details{background:#fff;padding:20px;border:1px solid var(--line)}
.comp-contact>.wrap{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px}.comp-contact .lead{background:#fff;border:1px solid var(--line);padding:28px}.comp-map{background:var(--soft)}
@media(max-width:900px){.comp-site .wrap{width:min(100% - 30px,1180px)}.comp-hero-1>.wrap,.comp-hero-4>.wrap,.comp-section-head,.comp-why>.wrap,.comp-area>.wrap,.comp-faq-2>.wrap,.comp-contact>.wrap{grid-template-columns:1fr}.comp-hero-4 .comp-hero-frame{margin:0}.comp-services-1 .comp-service-list,.comp-services-2 .comp-service-list,.comp-services-4 .comp-service-list,.comp-why-3 .comp-benefit-list,.comp-step-list,.comp-faq-3 .comp-faq-list{grid-template-columns:1fr}.comp-services-3 .comp-service-card,.comp-services-4 .comp-service-card{grid-template-columns:1fr}.comp-benefit-list{grid-template-columns:1fr}.comp-why-4 .comp-benefit-list article{grid-template-columns:45px 1fr}.comp-why-4 .comp-benefit-list article p{grid-column:2}.comp-hero-media,.comp-hero-4 .comp-hero-media,.comp-hero-wide{min-height:0;height:390px}.comp-hero-2{min-height:600px}.comp-cta>.wrap{display:block}.comp-cta .actions{margin-top:25px}}/* ===== Phase 3.13.1 quality floor ===== */
.tic{--q-section:72px;--q-gap:clamp(28px,4vw,58px);--q-card-gap:22px}
.cr-density-compact .tic{--q-section:58px;--q-gap:32px}
.cr-density-balanced .tic{--q-section:72px;--q-gap:46px}
.cr-density-spacious .tic{--q-section:88px;--q-gap:58px}
.tic>section:not(.tic1-hero):not(.tic4-hero):not(.tic10-hero){padding-top:var(--q-section);padding-bottom:var(--q-section)}
.tic .wrap{width:min(1180px,calc(100% - 48px))}
.tic h1,.tic h2,.tic h3,.tic p{overflow-wrap:break-word}
.tic h1{margin:12px 0 22px;max-width:18ch}
.tic h2{margin:8px 0 22px;max-width:22ch}
.tic h3{margin:8px 0 10px}
.tic p{margin:0 0 16px;max-width:72ch;color:inherit}
.tic .eyebrow{margin-bottom:8px}
.tic .actions{margin-top:24px}
.tic .btn{min-height:46px;padding:12px 19px}
.tic .tic-service-img,.tic .tic-hero-img,.tic .tic-area-img{object-position:center}
.tic .tic-area>.wrap,.tic .tic-contact>.wrap{gap:clamp(38px,6vw,76px)}
.tic .tic-area-media{height:360px;min-height:0}
.tic .tic-contact .lead{align-self:start}
.tic .tic-map{padding-top:18px!important;padding-bottom:50px!important}
.tic .tic-map .map-card{margin-top:0}
.tic .tic-cta>.wrap{min-height:160px}
.tic .tic-cta h2{max-width:18ch}
.tic .tic-process-grid{gap:18px}
.tic .tic-process-card,.tic .tic-process-dark,.tic .tic-process-bold{min-height:0}
.tic .tic-faq-detail p{font-size:15px;line-height:1.6}

/* T1 cinematic: remove oversized bands, keep alternating service stories balanced */
.tic1 .tic1-hero{min-height:min(760px,78vh)}
.tic1 .tic1-service{min-height:310px}
.tic1 .tic1-service-media{min-height:310px;max-height:390px}
.tic1 .tic1-service>div:last-child{padding:clamp(30px,4vw,50px)}
.tic1 .tic1-why>.wrap{gap:55px}

/* T2 editorial: readable editorial proportions */
.tic2 .tic2-hero figure img{height:clamp(430px,52vw,610px)}
.tic2 .tic2-manifesto>.wrap{grid-template-columns:110px minmax(0,1fr) minmax(280px,.8fr);gap:34px}
.tic2 .tic2-service{grid-template-columns:70px minmax(0,1fr) 220px;gap:28px}
.tic2 .tic2-thumb{height:135px}
.tic2 .tic-benefit-editorial{padding:24px}

/* T3 contractor: consistent card heights and less dead space */
.tic3 .tic3-hero-photo{height:470px}
.tic3 .tic3-service-grid{align-items:stretch}
.tic3 .tic3-service{display:flex;flex-direction:column;height:100%}
.tic3 .tic3-copy{flex:1}
.tic3 .tic3-photo{height:190px}
.tic3 .tic3-why>.wrap{gap:48px}

/* T4 architectural — screenshot-specific repair */
.tic4 .tic4-hero{grid-template-rows:minmax(430px,58vh) auto}
.tic4 .tic4-copy{padding:clamp(46px,6vw,82px)}
.tic4 .tic4-meta{padding:18px clamp(30px,6vw,82px)}
.tic4 .tic4-trust .tic-trust-box{padding:16px 18px}
.tic4 .tic4-title{grid-template-columns:.72fr 1.28fr;gap:52px;align-items:start;margin-bottom:34px}
.tic4 .tic4-title h2{margin-top:0}
.tic4 .tic4-service-grid{grid-template-columns:1.15fr .925fr .925fr;gap:18px;align-items:stretch}
.tic4 .tic4-service{min-height:0;display:flex;flex-direction:column;background:#fff}
.tic4 .tic4-photo{height:180px;flex:0 0 180px}
.tic4 .tic4-service>div:last-child{padding:20px 22px;flex:1}
.tic4 .tic4-service h3{font-size:18px}
.tic4 .tic4-service p{font-size:14px;line-height:1.55}
.tic4 .tic4-benefits{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.tic4 .tic-benefit-grid{padding:22px 24px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:170px}
.tic4 .tic-benefit-grid h3{font-size:17px}
.tic4 .tic-benefit-grid p{font-size:14px;line-height:1.55}
.tic4 .tic4-process .tic-process-grid{margin-top:28px}
.tic4 .tic4-process .tic-process-card{padding:22px;min-height:190px}
.tic4 .tic-area{padding-top:68px;padding-bottom:68px}
.tic4 .tic-cta{padding-top:54px!important;padding-bottom:54px!important}
.tic4 .tic4-faq>.wrap{width:min(900px,calc(100% - 48px))}

/* T5 dark industrial */
.tic5 .tic5-photo{height:500px}
.tic5 .tic5-service{padding:24px 0}
.tic5 .tic5-service h3{font-size:24px}
.tic5 .tic5-why>.wrap{gap:52px}
.tic5 .tic-benefit-dark{padding:23px;min-height:160px}

/* T6 warm local */
.tic6 .tic6-hero>.wrap{min-height:570px}
.tic6 .tic6-card{top:55px;padding:40px}
.tic6 .tic6-story>.wrap{gap:60px}
.tic6 .tic6-service-grid{gap:22px}
.tic6 .tic6-service{grid-template-columns:.9fr 1.1fr}
.tic6 .tic6-service>div:last-child{padding:24px}

/* T7 Swiss: intentionally minimal, not empty */
.tic7 .tic7-meta{margin-top:40px}
.tic7 .tic7-photo{padding-top:22px!important;padding-bottom:22px!important}
.tic7 .tic7-photo img{height:480px}
.tic7 .tic7-service{grid-template-columns:64px .72fr 1.28fr 64px;gap:24px;padding:24px 0}
.tic7 .tic7-service h3{font-size:24px}
.tic7 .tic-benefit-line{padding:24px 0}
.tic7 .tic-process-line{padding:24px 0}

/* T8 bold geometric */
.tic8 .tic8-photo{height:460px}
.tic8 .tic8-service-grid{gap:20px}
.tic8 .tic8-service{box-shadow:7px 7px 0 var(--a)}
.tic8 .tic8-service .tic8-photo{height:180px}
.tic8 .tic-benefit-bold{padding:22px;min-height:165px}

/* T9 magazine: keep drama without giant empty canvas */
.tic9 .tic9-hero h1{font-size:clamp(58px,8vw,112px)}
.tic9 .tic9-sub{gap:55px;margin:24px 0}
.tic9 .tic9-photo{height:560px}
.tic9 .tic9-intro>.wrap{gap:65px}
.tic9 .tic9-services>.wrap,.tic9 .tic9-why>.wrap,.tic9 .tic9-process>.wrap{grid-template-columns:150px minmax(0,1fr);gap:40px}
.tic9 .tic9-service-grid{gap:18px}
.tic9 .tic9-service .tic9-photo{height:220px}
.tic9 .tic9-service.tic9-feature .tic9-photo{height:440px}
.tic9 .tic-benefit-mag{padding:23px}

/* T10 split */
.tic10 .tic10-hero{min-height:620px}
.tic10 .tic10-copy{padding:clamp(50px,7vw,90px) clamp(38px,5vw,75px)}
.tic10 .tic10-service{grid-template-columns:.72fr 1.15fr 48px;gap:26px;padding:24px 0}
.tic10 .tic10-service h3{font-size:24px}
.tic10 .tic10-why>.wrap{gap:50px}
.tic10 .tic-benefit-split{padding:21px}

@media(max-width:900px){
 .tic{--q-section:56px}.tic .wrap{width:min(100% - 32px,1180px)}
 .tic h2{font-size:clamp(30px,7vw,44px)}
 .tic4 .tic4-title,.tic2 .tic2-manifesto>.wrap{grid-template-columns:1fr;gap:20px}
 .tic4 .tic4-service-grid{grid-template-columns:1fr 1fr}.tic4 .tic4-benefits{grid-template-columns:1fr 1fr}
 .tic2 .tic2-service{grid-template-columns:54px 1fr}.tic2 .tic2-thumb{grid-column:2;height:190px}
 .tic9 .tic9-services>.wrap,.tic9 .tic9-why>.wrap,.tic9 .tic9-process>.wrap{grid-template-columns:1fr}
}
@media(max-width:620px){
 .tic{--q-section:48px}.tic .wrap{width:min(100% - 26px,1180px)}
 .tic p{font-size:16px}.tic h1{font-size:clamp(39px,12vw,54px)}
 .tic4 .tic4-service-grid,.tic4 .tic4-benefits{grid-template-columns:1fr}
 .tic4 .tic4-photo{height:210px;flex-basis:210px}
 .tic .tic-area-media{height:300px}
}

/* ===== Phase 3.13.2 Layout Safety + Premium Polish ===== */
/* Universal media containment: generated images must never escape their component. */
.tic figure,.tic [class*="-photo"],.tic [class*="-media"],.tic [class*="-image"],.tic [class*="-thumb"]{min-width:0;max-width:100%}
.tic [class*="-photo"]>img,.tic [class*="-media"]>img,.tic [class*="-image"]>img,.tic [class*="-thumb"]>img{display:block;width:100%;height:100%;max-width:100%;object-fit:cover;object-position:center}
.tic section{overflow:clip}
.tic .wrap{min-width:0}
.tic .wrap>*{min-width:0}
.tic p{font-size:clamp(15.5px,1.12vw,17px);line-height:1.62}
.tic h3{font-size:clamp(18px,1.55vw,22px)}

/* T1 */
.tic1 .tic1-service-media{overflow:hidden}
.tic1 .tic1-service-media img{max-height:390px}
.tic1 .tic1-why{overflow:hidden}

/* T2 */
.tic2 .tic2-hero figure{overflow:hidden}
.tic2 .tic2-thumb{overflow:hidden}
.tic2 .tic2-service p{max-width:62ch}

/* T3 */
.tic3 .tic3-hero-photo,.tic3 .tic3-photo{overflow:hidden}
.tic3 .tic3-service p{font-size:15.5px}

/* T4 */
.tic4 .tic4-image,.tic4 .tic4-photo{overflow:hidden}
.tic4 .tic4-image .tic-hero-img{height:100%;min-height:430px}
.tic4 .tic4-services,.tic4 .tic4-why,.tic4 .tic4-process{padding-block:64px}
.tic4 .tic4-service p,.tic4 .tic-benefit-grid p{font-size:15px;line-height:1.58}

/* T5 */
.tic5 .tic5-photo{overflow:hidden}
.tic5 .tic5-services,.tic5 .tic5-why,.tic5 .tic5-process{padding-block:66px}

/* T6 CRITICAL: hero and service cards previously shared .tic6-photo.
   Restrict absolute positioning to HERO ONLY and reset service media completely. */
.tic6 .tic6-hero{overflow:hidden}
.tic6 .tic6-hero>.wrap{position:relative;min-height:560px;overflow:visible}
.tic6 .tic6-hero .tic6-photo{position:absolute;inset:0 0 0 28%;width:auto;height:auto;min-height:0;max-width:none;overflow:hidden;border-radius:30px}
.tic6 .tic6-hero .tic6-photo>img{width:100%;height:100%;object-fit:cover}
.tic6 .tic6-service{position:relative;isolation:isolate;overflow:hidden;min-height:270px;align-items:stretch}
.tic6 .tic6-service .tic6-photo{position:relative!important;inset:auto!important;width:auto!important;height:auto!important;min-height:270px!important;max-width:100%!important;border-radius:0!important;overflow:hidden!important}
.tic6 .tic6-service .tic6-photo>img{position:static!important;width:100%!important;height:100%!important;min-height:270px;object-fit:cover!important}
.tic6 .tic6-service>div:last-child{position:relative;z-index:2;background:#fff}
.tic6 .tic6-services,.tic6 .tic6-why,.tic6 .tic6-process{overflow:hidden}
.tic6 .tic6-benefits{gap:0 34px}
.tic6 .tic-benefit-story{padding:22px 0}

/* T7 */
.tic7 .tic7-photo{overflow:hidden}
.tic7 .tic7-services,.tic7 .tic7-why,.tic7 .tic7-process{padding-block:62px}
.tic7 .tic7-service p{font-size:15.5px}

/* T8: hero and service both use .tic8-photo; scope dimensions explicitly. */
.tic8 .tic8-hero .tic8-photo{height:460px;overflow:hidden}
.tic8 .tic8-service .tic8-photo{height:190px!important;overflow:hidden;box-shadow:none;border-width:0 0 3px 0}
.tic8 .tic8-service{overflow:hidden}

/* T9: keep magazine imagery dramatic but bounded. */
.tic9 .tic9-hero .tic9-photo{height:clamp(420px,52vw,560px);overflow:hidden}
.tic9 .tic9-service .tic9-photo{height:220px;overflow:hidden}
.tic9 .tic9-service.tic9-feature .tic9-photo{height:420px}
.tic9 .tic9-services,.tic9 .tic9-why,.tic9 .tic9-process{padding-block:64px}

/* T10 */
.tic10 .tic10-photo{overflow:hidden;min-height:520px}
.tic10 .tic10-photo .tic-hero-img{height:100%}
.tic10 .tic10-services,.tic10 .tic10-why,.tic10 .tic10-process{padding-block:64px}

/* Shared premium density and alignment. */
.tic .tic-area h2,.tic .tic-contact h2{margin-top:6px}
.tic .tic-area>.wrap{align-items:center}
.tic .tic-contact>.wrap{align-items:start}
.tic .tic-cta p{max-width:62ch}
.tic .tic-faq-detail summary{font-size:16px;line-height:1.45;padding-right:8px}
.tic .tic-faq-detail p{max-width:76ch}

@media(max-width:900px){
 .tic section{overflow:hidden}
 .tic6 .tic6-hero>.wrap{min-height:auto}
 .tic6 .tic6-hero .tic6-photo{position:relative;inset:auto;width:100%;height:420px;max-width:100%;border-radius:22px}
 .tic6 .tic6-card{position:relative;left:auto;top:auto;width:calc(100% - 28px);margin:-44px auto 0;padding:34px;z-index:2}
 .tic6 .tic6-service{grid-template-columns:1fr}
 .tic6 .tic6-service .tic6-photo{height:250px!important;min-height:250px!important}
 .tic8 .tic8-hero .tic8-photo{height:400px}
 .tic10 .tic10-photo{min-height:420px;height:420px}
}
@media(max-width:620px){
 .tic .tic-area>.wrap,.tic .tic-contact>.wrap{gap:30px}
 .tic6 .tic6-hero .tic6-photo{height:330px}
 .tic6 .tic6-card{padding:26px}
 .tic6 .tic6-service .tic6-photo{height:220px!important;min-height:220px!important}
 .tic8 .tic8-hero .tic8-photo{height:330px}
 .tic9 .tic9-hero .tic9-photo{height:340px}
 .tic9 .tic9-service.tic9-feature .tic9-photo{height:300px}
 .tic10 .tic10-photo{height:340px;min-height:340px}
}


/* ===== Phase 4.3.1B — Design Diversity, Adaptive Typography & Resilient Maps ===== */
/* Long headlines step down automatically instead of creating 6–8 oversized lines. */
.hero-copy-medium .tic h1,.hero-copy-medium .comp-hero h1,.hero-copy-medium .hero h1{font-size:clamp(38px,5vw,66px)!important;line-height:1.01!important}
.hero-copy-long .tic h1,.hero-copy-long .comp-hero h1,.hero-copy-long .hero h1{font-size:clamp(34px,4.35vw,56px)!important;line-height:1.04!important;letter-spacing:-.035em!important}
.hero-copy-long .tic9-hero h1{font-size:clamp(44px,6.4vw,82px)!important}
/* Never reserve a giant map region when an embed is absent or fails. */
.awb-map-shell{position:relative;min-height:280px;background:var(--soft,#f4f6f8);overflow:hidden}
.awb-location-map{display:block;width:100%!important;max-width:none!important;min-width:100%!important;height:340px!important;border:0}
.awb-map-fallback{display:none;min-height:280px;padding:36px;align-items:flex-start;justify-content:center;flex-direction:column;gap:12px;background:linear-gradient(135deg,var(--soft,#f5f6f7),#fff)}
.awb-map-fallback strong{font-size:clamp(22px,2.4vw,34px);line-height:1.1}.awb-map-fallback span{max-width:62ch;color:var(--muted,#64748b)}
.awb-map-card.map-failed .awb-location-map{display:none}.awb-map-card.map-failed .awb-map-fallback{display:flex}
/* Optional/empty sections collapse rather than leaving generator-like white bands. */
.tic section:empty,.comp-site section:empty{display:none!important}.tic .map-card:empty,.comp-site .map-card:empty{display:none!important}
/* 4.3.1D: never preserve dimensions for a failed generated image. */
.tic .awb-media-failed,.comp-site .awb-media-failed{display:none!important;min-height:0!important;height:0!important;margin:0!important;padding:0!important;border:0!important}
/* More distinct visual signatures between template families without changing content/data. */
.pit-template-1 .tic-service-img,.pit-template-1 .tic-area-img{border-radius:24px}.pit-template-2 .tic [class*="service"]{border-radius:0}.pit-template-3 .tic [class*="service"]{border-radius:14px}.pit-template-4 .tic [class*="service"]{box-shadow:none}.pit-template-5 .tic [class*="service"]{border-radius:2px}.pit-template-6 .tic [class*="service"]{border-radius:22px}.pit-template-7 .tic [class*="service"]{border-radius:0}.pit-template-8 .tic [class*="service"]{border-radius:8px}.pit-template-9 .tic [class*="service"]{border-radius:0}.pit-template-10 .tic [class*="service"]{border-radius:18px}
@media(max-width:620px){.hero-copy-medium .tic h1,.hero-copy-long .tic h1,.hero-copy-medium .comp-hero h1,.hero-copy-long .comp-hero h1{font-size:clamp(34px,10.5vw,46px)!important}.awb-map-shell,.awb-map-fallback{min-height:230px}.awb-location-map{height:280px!important}}
/* Phase 3.13.3 — Premium typography and brand identity */
body{font-size:16px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
.tic p{font-size:clamp(16px,1.05vw,18px);line-height:1.68;letter-spacing:-.006em}.tic h1,.tic h2,.tic h3{text-wrap:balance}.tic h1{font-weight:760}.tic h2{font-weight:740}.tic h3{font-weight:700}.tic small,.tic .eyebrow{letter-spacing:.11em}.tic .eyebrow{font-size:12px}.tic a:not(.btn){text-underline-offset:3px}
/* Six controlled typography personalities, no remote font dependency. */
.cr-typography-grotesk{font-family:Arial,"Helvetica Neue",Helvetica,sans-serif}.cr-typography-grotesk .tic h1,.cr-typography-grotesk .tic h2{letter-spacing:-.05em;font-weight:800}
.cr-typography-geometric{font-family:"Trebuchet MS",Arial,sans-serif}.cr-typography-geometric .tic h1,.cr-typography-geometric .tic h2{letter-spacing:-.045em;font-weight:700}
.cr-typography-humanist{font-family:"Segoe UI",Tahoma,Arial,sans-serif}.cr-typography-humanist .tic h1,.cr-typography-humanist .tic h2{letter-spacing:-.035em;font-weight:680}
.cr-typography-classic{font-family:Verdana,"Segoe UI",sans-serif}.cr-typography-classic .tic h1,.cr-typography-classic .tic h2{letter-spacing:-.035em;font-weight:700}
.cr-typography-serif_editorial{font-family:Georgia,"Times New Roman",serif}.cr-typography-serif_editorial .tic h1,.cr-typography-serif_editorial .tic h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.035em;font-weight:700}.cr-typography-serif_editorial .tic p,.cr-typography-serif_editorial .tic .btn,.cr-typography-serif_editorial nav{font-family:"Segoe UI",Arial,sans-serif}
.cr-typography-condensed_display{font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif}.cr-typography-condensed_display .tic h1,.cr-typography-condensed_display .tic h2{font-stretch:condensed;letter-spacing:-.035em;font-weight:700}
/* Readability floor for dense component copy. */
.tic [class*="service"] p,.tic [class*="benefit"] p,.tic [class*="process"] p{font-size:clamp(15.5px,.98vw,17px);line-height:1.62}.tic [class*="service"] h3,.tic [class*="benefit"] h3,.tic [class*="process"] h3{font-size:clamp(18px,1.35vw,22px);line-height:1.25}.tic .tic-faq-detail summary{font-size:clamp(15.5px,1vw,17px)}
/* Unique fallback identity marks. Uploaded/AI image logos still take precedence. */
.brand-lockup{gap:12px;min-width:0}.brand-name{line-height:1.05;letter-spacing:-.02em}.brand-name strong{display:block;font-weight:900}.brand-name small{margin-top:4px;letter-spacing:.04em;text-transform:none;font-size:9px}.brand-symbol{width:42px;height:42px;position:relative;display:grid;place-items:center;flex:0 0 42px;color:#fff;background:var(--p);font-style:normal}.brand-symbol i{font-style:normal;font-weight:900;font-size:14px;position:relative;z-index:2}.brand-symbol-ring{border-radius:50%;background:transparent;border:3px solid var(--p);color:var(--p)}.brand-symbol-square{border-radius:5px}.brand-symbol-square b{position:absolute;width:13px;height:13px;right:-4px;bottom:-4px;background:var(--a);border:3px solid #fff}.brand-symbol-diamond{transform:rotate(45deg);border-radius:7px}.brand-symbol-diamond i{transform:rotate(-45deg)}.brand-symbol-lines{background:transparent;gap:4px;align-content:center}.brand-symbol-lines b{display:block;height:4px;background:var(--p)}.brand-symbol-lines b:nth-child(1){width:32px}.brand-symbol-lines b:nth-child(2){width:23px}.brand-symbol-lines b:nth-child(3){width:14px}.brand-symbol-shield{clip-path:polygon(50% 0,92% 16%,86% 70%,50% 100%,14% 70%,8% 16%);border-radius:0}.brand-symbol-mono{border-radius:12px 2px 12px 2px;background:var(--s)}.brand-symbol-dot{border-radius:50% 50% 50% 10%;background:var(--a);color:var(--ink)}
/* Section polish: stronger hierarchy, less generator-like repetition. */
.tic .tic-area,.tic .tic-contact{border-top:1px solid color-mix(in srgb,var(--ink) 9%,transparent)}.tic .tic-area h2,.tic .tic-contact h2{font-size:clamp(30px,3.2vw,48px)}.tic .tic-cta{padding-block:clamp(52px,6vw,76px)!important}.tic .tic-cta h2{font-size:clamp(31px,3.5vw,50px)}.tic .tic-map .map-card{box-shadow:0 18px 50px #0f172a10}.tic .tic-contact .lead{box-shadow:0 18px 50px #0f172a0b;border-radius:16px}.tic .tic-contact input,.tic .tic-contact textarea,.tic .tic-contact select{font-size:16px;min-height:46px}.tic .tic-contact textarea{min-height:120px}
/* Density is now deliberate rather than just large gaps. */
.cr-density-compact .tic>section{padding-block:58px}.cr-density-balanced .tic>section{padding-block:72px}.cr-density-spacious .tic>section{padding-block:86px}.cr-density-spacious .tic p{max-width:68ch}
/* Make process systems less visually identical. */
.pit-template-2 .tic-process-line span,.pit-template-7 .tic-process-line span,.pit-template-9 .tic-process-line span{font-family:Georgia,serif;font-size:22px}.pit-template-3 .tic-process-card{border-top-width:4px;border-radius:12px}.pit-template-4 .tic-process-card{background:transparent;box-shadow:none;border-top:1px solid var(--ink)}.pit-template-6 .tic-process-card{border-radius:18px;background:#fffaf4}.pit-template-8 .tic-process-bold{box-shadow:6px 6px 0 var(--a)}
/* FAQ personality by family. */
.pit-template-1 .tic-faq-detail,.pit-template-5 .tic-faq-detail{border-color:#ffffff2b}.pit-template-3 .tic-faq-detail{background:var(--soft);padding-inline:18px;border-radius:10px;margin:8px 0}.pit-template-6 .tic-faq-detail{background:#fff;border:1px solid #eadfce;padding-inline:18px;border-radius:16px;margin:9px 0}.pit-template-8 .tic-faq-detail{border:2px solid var(--ink);padding-inline:16px;margin:9px 0}
.category-symbol{border-radius:12px;background:var(--p);color:#fff;box-shadow:none;overflow:hidden}.category-symbol svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.category-logo-round .category-symbol{border-radius:50%}.category-logo-outline .category-symbol{background:transparent;color:var(--p);border:2px solid currentColor}.category-logo-shield .category-symbol{border-radius:0;clip-path:polygon(50% 0,92% 15%,86% 72%,50% 100%,14% 72%,8% 15%);padding:7px}.category-logo-tile .category-symbol{border-radius:4px;box-shadow:5px 5px 0 color-mix(in srgb,var(--a) 70%,transparent)}.brand-layout-1 .brand-name{font-weight:800}.brand-layout-2 .brand-symbol{width:46px;height:38px;flex-basis:46px;border-radius:999px}.brand-layout-3 .brand-name{padding-left:10px;border-left:1px solid color-mix(in srgb,currentColor 22%,transparent)}.category-logo-badge .category-symbol{border-radius:8px 8px 14px 8px;background:var(--s)}
/* Phase 4.3.1A: header contrast guard. Header content must stay visible for every palette/hero. */
.cdh{--header-fg:#111827;--header-muted:#64748b;color:var(--header-fg)}.cdh .logo,.cdh nav a,.cdh .brand-name{color:var(--header-fg)!important}.cdh .brand-name small{color:var(--header-muted)!important}.cdh .menu{color:var(--header-fg)}
.cdh-4{background:rgba(15,23,42,.88)!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.16);--header-fg:#fff;--header-muted:rgba(255,255,255,.72)}.cdh-4 .logo,.cdh-4 nav a,.cdh-4 .brand-name,.cdh-4 .brand-name small{color:inherit!important}.cdh-4 .category-symbol{background:var(--p);color:#fff;border:1px solid rgba(255,255,255,.25)}
.cdh-2 .cdh-strip{color:#fff}.cdh-2 .cdh-strip *{color:inherit}
@media(max-width:700px){.brand-symbol{width:38px;height:38px;flex-basis:38px}.category-symbol svg{width:24px;height:24px}.brand-name{font-size:14px}.brand-name small{display:none}.tic p{font-size:16px}.cr-density-spacious .tic>section,.cr-density-balanced .tic>section{padding-block:58px}}/* ===== Phase 3.14 Unified Premium Design System ===== */
:root{--premium-shadow:0 18px 55px rgba(15,23,42,.08)}
body{font-size:17px;background:var(--surface,#fff);color:var(--ink)}
.site-header{border-bottom:1px solid color-mix(in srgb,var(--ink) 8%,transparent);box-shadow:none}
.nav{height:76px}.nav nav{font-size:14px;gap:28px}.nav nav a{font-weight:650}
.logo{font-size:16px}.brand-name small,.logo small{font-size:10px}
.btn{border-radius:9px;font-size:14px;min-height:44px;box-shadow:none!important}
.btn-primary{background:var(--p)}.btn-primary:hover{filter:brightness(.92)}
.tic p{font-size:clamp(16px,1vw,18px);line-height:1.7}
.tic h1{font-size:clamp(46px,5.6vw,78px);line-height:1.01;letter-spacing:-.045em}
.tic h2{font-size:clamp(31px,3.4vw,48px);line-height:1.08}
.tic h3{font-size:clamp(18px,1.25vw,21px)}
.tic .eyebrow{font-size:11px;letter-spacing:.14em}
.tic [class*="service"] p,.tic [class*="benefit"] p,.tic [class*="process"] p{font-size:16px!important;line-height:1.65!important}
.tic>section:not(.tic1-hero):not(.tic4-hero):not(.tic10-hero){padding-block:clamp(64px,7vw,84px)}
/* smoother component surfaces */
.tic article{transition:transform .18s ease,box-shadow .18s ease}
.tic [class*="service"] img,.tic [class*="area"] img{filter:saturate(.92) contrast(.98)}
.tic .tic-area,.tic .tic-contact{border-top:0}
.tic .tic-area{background:color-mix(in srgb,var(--soft) 72%,#fff)}
.tic .tic-contact{background:#fff}
.tic .tic-contact .lead{border:1px solid color-mix(in srgb,var(--ink) 8%,transparent);box-shadow:var(--premium-shadow);border-radius:14px}
.tic .tic-contact input,.tic .tic-contact textarea,.tic .tic-contact select{border-radius:7px;border-color:color-mix(in srgb,var(--ink) 12%,transparent)}
.tic .tic-map .map-card{border-radius:14px!important;box-shadow:var(--premium-shadow);border-color:color-mix(in srgb,var(--ink) 8%,transparent)}
.tic .tic-cta{background:var(--s);color:#fff}
.tic .tic-cta .btn-primary{background:#fff;color:var(--s)}
/* Services: clean, deliberate, less generated */
.tic3-service,.tic4-service,.tic8-service,.tic9-service{box-shadow:none!important}
.tic3-service{border-color:color-mix(in srgb,var(--ink) 10%,transparent);border-radius:14px;overflow:hidden}
.tic3-service-grid{gap:22px}
.tic4-service-grid{gap:22px}.tic4-service{border-color:color-mix(in srgb,var(--ink) 10%,transparent);border-radius:12px;overflow:hidden}
.tic8-service{box-shadow:7px 7px 0 color-mix(in srgb,var(--a) 55%,transparent)!important}
.tic10-service{padding-block:26px}
/* Why Us: readable and breathable */
.tic3-benefits,.tic4-benefits,.tic5-benefits,.tic6-benefits,.tic8-benefits,.tic9-benefits,.tic10-benefits{gap:16px}
.tic-benefit-check,.tic-benefit-grid,.tic-benefit-dark,.tic-benefit-bold,.tic-benefit-mag,.tic-benefit-split{min-height:0}
.tic-benefit-check{border-radius:10px;padding:22px}
.tic-benefit-grid{padding:24px;border-color:color-mix(in srgb,var(--ink) 10%,transparent)}
/* Process: stronger hierarchy */
.tic-process-card{padding:25px;background:transparent;border-top:2px solid var(--p);box-shadow:none}
.tic-process-card>span{font-size:12px;letter-spacing:.08em}
.tic-process-line{padding-block:24px!important}
/* FAQ: elegant separators rather than boxes everywhere */
.tic-faq-detail{background:transparent!important;border-radius:0!important;border:0!important;border-bottom:1px solid color-mix(in srgb,var(--ink) 12%,transparent)!important;margin:0!important;padding:18px 2px!important}
.tic-faq-detail summary{font-size:16px!important;font-weight:680}
.tic-faq-row{border-color:color-mix(in srgb,var(--ink) 12%,transparent)}
/* Template personality refinements */
.pit-template-1 .tic1-service{border-color:color-mix(in srgb,var(--ink) 10%,transparent)}
.pit-template-2 .tic2-service{border-color:color-mix(in srgb,var(--ink) 20%,transparent)}
.pit-template-3 .tic3-why{background:var(--s)}
.pit-template-4 .tic4-why{background:color-mix(in srgb,var(--soft) 76%,#fff)}
.pit-template-5 .tic5-why,.pit-template-5 .tic5-services{background:#101216}
.pit-template-6 .tic6-service{border:1px solid color-mix(in srgb,var(--ink) 8%,transparent);box-shadow:0 12px 35px rgba(15,23,42,.05)}
.pit-template-7 .tic7-service,.pit-template-7 .tic-benefit-line{border-color:color-mix(in srgb,var(--ink) 30%,transparent)}
.pit-template-9 .tic9-service{border-color:color-mix(in srgb,var(--ink) 20%,transparent)}
/* ===== Whole-site internal page system ===== */
body.page-about,body.page-contact,body.page-service{background:var(--surface,#fff)}
.inner-hero{padding:72px 0!important;background:linear-gradient(135deg,var(--soft),#fff)!important;border-bottom:1px solid color-mix(in srgb,var(--ink) 7%,transparent)}
.inner-grid{grid-template-columns:.92fr 1.08fr!important;gap:clamp(42px,6vw,78px)!important}
.inner-hero h1{font-size:clamp(42px,5vw,66px)!important;line-height:1.03!important;letter-spacing:-.04em!important;max-width:15ch!important}
.inner-hero .lead-copy{font-size:18px!important;line-height:1.72!important;max-width:60ch}
.inner-photo{border-radius:12px!important;box-shadow:var(--premium-shadow)!important}
.inner-photo img{height:390px!important}
body.page-service .content,body.page-about .content{max-width:1050px!important}
.content-card{border:0!important;border-left:3px solid var(--p)!important;border-radius:0!important;padding:10px 0 10px 30px!important;background:transparent!important;margin:30px 0 42px!important}
.content-card h2{font-size:clamp(28px,3vw,40px);line-height:1.1}
.content-card p,.content>p{font-size:17px!important;line-height:1.8!important;color:color-mix(in srgb,var(--ink) 78%,#fff)!important}
body.page-service .content>.inner-photo{max-width:760px;margin:0 auto 44px}
body.page-service .content>.inner-photo img{height:430px!important}
body.page-contact .contact-grid{align-items:start;gap:60px!important}
body.page-contact .contact-card{margin:0;background:var(--soft);border:0;border-radius:12px;padding:30px}
body.page-contact .map-section{padding-top:0!important}
/* ===== Rebuilt footer ===== */
.premium-footer{background:var(--s)!important;color:color-mix(in srgb,#fff 78%,var(--s))!important;padding:64px 0 22px!important}
.footer-premium-grid{display:grid;grid-template-columns:1.55fr .7fr .9fr 1.1fr;gap:clamp(30px,5vw,70px);align-items:start}
.footer-brand .logo{color:#fff!important;margin-bottom:20px}.footer-brand p{max-width:38ch;font-size:14px;line-height:1.7;color:color-mix(in srgb,#fff 70%,var(--s))}
.footer-col b{display:block;color:#fff;margin-bottom:16px;font-size:13px;letter-spacing:.06em;text-transform:uppercase}
.footer-col a,.footer-col span{display:block;margin:9px 0;font-size:14px;line-height:1.45;color:color-mix(in srgb,#fff 74%,var(--s));overflow-wrap:anywhere}
.footer-col a:hover{color:#fff}
.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid #ffffff18;margin-top:48px;padding-top:20px;font-size:12px;color:#ffffff88}
.footer-area span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#ffffff88}.footer-area strong{display:block;color:#fff;font-size:clamp(22px,2.4vw,34px);line-height:1.15;margin-top:8px}
.footer-mini-links{display:flex;gap:20px;flex-wrap:wrap;margin-top:26px}.footer-mini-links a{color:#ffffffb8;font-size:14px}
.footer-v3 .footer-premium-grid{grid-template-columns:1fr 1.3fr .8fr}.footer-v3 .footer-brand{max-width:430px}
.footer-v4 .footer-premium-grid{grid-template-columns:1.35fr 1fr .65fr .8fr}
/* typography personalities, cleaner professional scale */
.cr-typography-serif_editorial .tic h1,.cr-typography-serif_editorial .tic h2,.cr-typography-serif_editorial .inner-hero h1{font-family:Georgia,"Times New Roman",serif;font-weight:600;letter-spacing:-.035em}
.cr-typography-grotesk .tic h1,.cr-typography-grotesk .tic h2{font-weight:760}
.cr-typography-geometric .tic h1,.cr-typography-geometric .tic h2{font-weight:700}
.cr-typography-humanist .tic h1,.cr-typography-humanist .tic h2{font-weight:650}
.cr-typography-classic .tic h1,.cr-typography-classic .tic h2{font-weight:680}
.cr-typography-condensed_display .tic h1,.cr-typography-condensed_display .tic h2{font-family:"Arial Narrow","Helvetica Neue",Arial,sans-serif;font-weight:700;letter-spacing:-.03em}
/* palette-specific surfaces */
body{--surface:#fff}
.cr-density-compact .tic>section{padding-block:60px}
.cr-density-balanced .tic>section{padding-block:72px}
.cr-density-spacious .tic>section{padding-block:82px}
@media(max-width:900px){
 .footer-premium-grid,.footer-v3 .footer-premium-grid,.footer-v4 .footer-premium-grid{grid-template-columns:1fr 1fr}
 .inner-grid{grid-template-columns:1fr!important}
 .inner-photo img{height:320px!important}
}

/* ===== Phase 3.14.2 Contrast-Safe Color Engine ===== */
/* Professional type scale. No poster-sized local-service headings. */
.tic h1{font-size:clamp(42px,4vw,60px)!important;line-height:1.04!important;letter-spacing:-.035em!important;max-width:16ch}
.tic h2{font-size:clamp(28px,2.6vw,40px)!important;line-height:1.1!important;letter-spacing:-.022em!important}
.tic h3{font-size:clamp(18px,1.15vw,21px)!important;line-height:1.28!important}
.inner-hero h1{font-size:clamp(38px,3.6vw,54px)!important;line-height:1.06!important;max-width:17ch!important}
.tic p,.inner-hero .lead-copy{max-width:68ch}
.pit-template-2 .tic h1,.pit-template-7 .tic h1,.pit-template-8 .tic h1,.pit-template-9 .tic h1{
 font-size:clamp(40px,3.55vw,56px)!important;max-width:15ch!important
}

/* IMPORTANT: color is assigned to real components, never section position.
   Every light surface explicitly receives dark text. */
.tic section[class$="-services"]{
 background:color-mix(in srgb,var(--p) 5%,#fff)!important;color:var(--ink)!important
}
.tic section[class$="-services"] h2,.tic section[class$="-services"] h3,
.tic section[class$="-services"] p,.tic section[class$="-services"] b,
.tic section[class$="-services"] small{color:var(--ink)!important}
.tic section[class$="-services"] a{color:var(--p)!important}

.tic section[class$="-process"]{
 background:#fff!important;color:var(--ink)!important
}
.tic section[class$="-process"] h2,.tic section[class$="-process"] h3,
.tic section[class$="-process"] p{color:var(--ink)!important}

.tic section[class$="-faq"]{
 background:color-mix(in srgb,var(--a) 6%,#fff)!important;color:var(--ink)!important
}
.tic section[class$="-faq"] h2,.tic section[class$="-faq"] h3,
.tic section[class$="-faq"] p,.tic section[class$="-faq"] summary{color:var(--ink)!important}

.tic .tic-area{
 background:color-mix(in srgb,var(--p) 7%,#fff)!important;color:var(--ink)!important
}
.tic .tic-area h2,.tic .tic-area h3,.tic .tic-area p,.tic .tic-area small{color:var(--ink)!important}

.tic .tic-contact{background:#fff!important;color:var(--ink)!important}
.tic .tic-contact h2,.tic .tic-contact h3,.tic .tic-contact p,
.tic .tic-contact label,.tic .tic-contact small{color:var(--ink)!important}
.tic .tic-contact .lead{background:#fff!important;color:var(--ink)!important}
.tic .tic-contact input,.tic .tic-contact textarea,.tic .tic-contact select{
 background:#fff!important;color:var(--ink)!important
}

.tic .tic-map{background:color-mix(in srgb,var(--s) 3%,#fff)!important;color:var(--ink)!important}

/* CTA is the strong brand-color moment; contrast is fixed. */
.tic .tic-cta{background:var(--p)!important;color:#fff!important}
.tic .tic-cta h2,.tic .tic-cta h3,.tic .tic-cta p,.tic .tic-cta small{color:#fff!important}
.tic .tic-cta .btn-primary{background:#fff!important;color:var(--p)!important}
.tic .tic-cta .btn:not(.btn-primary){border-color:#fff!important;color:#fff!important}

/* Keep template personality in Why Us, but guarantee contrast. */
.pit-template-1 section.tic1-why,.pit-template-3 section.tic3-why,
.pit-template-5 section.tic5-why,.pit-template-10 section.tic10-why{
 background:var(--s)!important;color:#fff!important
}
.pit-template-1 .tic1-why h2,.pit-template-1 .tic1-why h3,.pit-template-1 .tic1-why p,
.pit-template-3 .tic3-why h2,.pit-template-3 .tic3-why h3,.pit-template-3 .tic3-why p,
.pit-template-5 .tic5-why h2,.pit-template-5 .tic5-why h3,.pit-template-5 .tic5-why p,
.pit-template-10 .tic10-why h2,.pit-template-10 .tic10-why h3,.pit-template-10 .tic10-why p{
 color:#fff!important
}
.pit-template-2 section.tic2-why,.pit-template-4 section.tic4-why,
.pit-template-6 section.tic6-why,.pit-template-7 section.tic7-why,
.pit-template-8 section.tic8-why,.pit-template-9 section.tic9-why{
 background:color-mix(in srgb,var(--a) 9%,#fff)!important;color:var(--ink)!important
}
.pit-template-2 .tic2-why h2,.pit-template-2 .tic2-why h3,.pit-template-2 .tic2-why p,
.pit-template-4 .tic4-why h2,.pit-template-4 .tic4-why h3,.pit-template-4 .tic4-why p,
.pit-template-6 .tic6-why h2,.pit-template-6 .tic6-why h3,.pit-template-6 .tic6-why p,
.pit-template-7 .tic7-why h2,.pit-template-7 .tic7-why h3,.pit-template-7 .tic7-why p,
.pit-template-8 .tic8-why h2,.pit-template-8 .tic8-why h3,.pit-template-8 .tic8-why p,
.pit-template-9 .tic9-why h2,.pit-template-9 .tic9-why h3,.pit-template-9 .tic9-why p{
 color:var(--ink)!important
}

/* Brand accents: visible variety without turning the whole page into blocks of color. */
.tic .eyebrow,.tic [class*="label"],.tic [class*="num"]{color:var(--p)!important}
.tic article{border-color:color-mix(in srgb,var(--p) 18%,transparent)!important}
.tic .tic-process-card{border-top-color:var(--a)!important}
.btn-primary{background:var(--p)!important;color:#fff!important}
.premium-footer{background:var(--s)!important;color:#fff!important}
.premium-footer a,.premium-footer b,.premium-footer p,.premium-footer span,.premium-footer strong{color:#fff!important}

/* Template-specific accent treatment, but always contrast-safe. */
.pit-template-1 section[class$="-services"],.pit-template-6 section[class$="-services"]{
 background:color-mix(in srgb,var(--a) 7%,#fff)!important
}
.pit-template-2 section[class$="-faq"],.pit-template-7 section[class$="-faq"]{
 background:color-mix(in srgb,var(--p) 6%,#fff)!important
}
.pit-template-4 .tic-area,.pit-template-9 .tic-area{
 background:color-mix(in srgb,var(--a) 9%,#fff)!important
}

/* Dark editorial template 5 keeps its deliberate dark identity instead of being washed out. */
.pit-template-5 .tic5{background:#0b0d10!important;color:#f5f5f5!important}
.pit-template-5 .tic5-hero,.pit-template-5 .tic5-trust{background:#0b0d10!important;color:#f5f5f5!important}
.pit-template-5 .tic5-hero h1,.pit-template-5 .tic5-hero p,
.pit-template-5 .tic5-trust *{color:#f5f5f5!important}

@media(max-width:620px){
 .nav{height:68px}.tic h1{font-size:40px}.tic h2{font-size:30px}
 .footer-premium-grid,.footer-v3 .footer-premium-grid,.footer-v4 .footer-premium-grid{grid-template-columns:1fr}
 .footer-bottom{display:block;text-align:left}.footer-bottom span{display:block;margin:6px 0}
 .premium-footer{padding-top:48px!important}
 .inner-hero{padding:48px 0!important}.inner-hero h1{font-size:38px!important}.inner-photo img,body.page-service .content>.inner-photo img{height:270px!important}
 .content-card{padding-left:20px!important}
}/* Phase 4.0 Premium Creative Director */
.cd-site{--cd-pad:clamp(70px,8vw,118px);overflow:hidden;background:var(--surface);color:var(--ink)}
.cd-site section{padding:var(--cd-pad) 0}.cd-site .wrap{width:min(1200px,calc(100% - 52px));margin:auto}.cd-site h1,.cd-site h2,.cd-site h3{margin-top:0}.cd-site h1{font-size:clamp(44px,5.5vw,76px)!important;line-height:.98!important;letter-spacing:-.055em!important}.cd-site h2{font-size:clamp(34px,4vw,56px)!important;line-height:1.02!important;letter-spacing:-.04em!important}.cd-site h3{font-size:clamp(19px,1.7vw,25px)!important}.cd-site p{font-size:clamp(16px,1.2vw,18px);line-height:1.72}.cd-kicker{font-size:12px;font-weight:900;letter-spacing:.18em;margin-bottom:18px;color:var(--p)}
.cd-hero{position:relative;min-height:700px}.cd-hero-copy{position:relative;z-index:2}.cd-hero-copy p{font-size:clamp(18px,1.6vw,22px);max-width:650px}.cd-hero-media img,.cd-service-media img,.cd-area-media img{width:100%;height:100%;object-fit:cover;display:block}
.cd-hero-agency>.wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.cd-hero-agency .cd-hero-media{height:570px;clip-path:polygon(8% 0,100% 0,100% 92%,0 100%)}.cd-agency-note{position:absolute;right:4vw;bottom:35px;background:var(--a);padding:18px 25px;font-weight:850}
.cd-hero-editorial>.wrap{display:grid;grid-template-columns:.9fr 1.1fr;align-items:end;position:relative}.cd-hero-editorial .cd-hero-copy{padding:70px 70px 80px 0}.cd-hero-editorial .cd-hero-media{height:650px}.cd-editorial-number{position:absolute;font-family:Georgia,serif;font-size:180px;line-height:1;color:color-mix(in srgb,var(--p) 12%,transparent);left:36%;top:0}
.cd-hero-conversion{background:var(--soft)}.cd-hero-conversion>.wrap{display:grid;grid-template-columns:1fr .85fr;gap:0;align-items:center}.cd-conversion-panel{background:var(--s);color:#fff;padding:60px;margin-right:-45px;z-index:2}.cd-conversion-panel h1,.cd-conversion-panel p{color:#fff!important}.cd-hero-conversion .cd-hero-media{height:600px}.cd-trustline{margin-top:38px;padding-top:22px;border-top:1px solid #ffffff30;font-weight:750}.cd-trustline span{padding:0 9px;color:var(--a)}
.cd-hero-minimal>.wrap{display:grid;grid-template-columns:.75fr 1.25fr;gap:100px;align-items:center}.cd-hero-minimal .cd-hero-media{height:610px}.cd-hero-minimal .cd-hero-copy{border-top:2px solid var(--ink);padding-top:35px}
.cd-hero-warm{background:var(--soft)}.cd-hero-warm>.wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:55px;align-items:center;position:relative}.cd-hero-warm .cd-hero-media{height:560px;border-radius:48% 48% 12px 12px}.cd-warm-shape{position:absolute;width:330px;height:330px;border-radius:50%;background:var(--a);opacity:.14;left:-180px;top:-60px}
.cd-hero-cinematic{min-height:780px;display:flex;align-items:flex-end;color:#fff}.cd-hero-cinematic .cd-hero-media{position:absolute;inset:0}.cd-hero-cinematic .cd-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#050b14ee 0 42%,#050b1466 72%,#050b1418)}.cd-hero-cinematic>.wrap{position:relative;padding-bottom:100px}.cd-hero-cinematic h1,.cd-hero-cinematic p{color:#fff!important}.cd-hero-cinematic .cd-kicker{color:var(--a)}.cd-scroll{position:absolute;right:25px;bottom:90px;writing-mode:vertical-rl;font-size:10px;letter-spacing:.2em}
.cd-section-title{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;margin-bottom:55px}.cd-service-list{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.cd-service{position:relative;background:#fff;border:1px solid color-mix(in srgb,var(--ink) 12%,transparent);overflow:hidden}.cd-service-media{height:245px}.cd-service-copy{padding:28px}.cd-service-copy>span{font-size:12px;font-weight:900;color:var(--p)}.cd-service-copy a{font-weight:850;color:var(--p)}
.cd-services-journal .cd-service-list{grid-template-columns:1.35fr .825fr .825fr}.cd-services-journal .cd-service:first-child{grid-row:span 2}.cd-services-journal .cd-service:first-child .cd-service-media{height:410px}.cd-services-mosaic .cd-service:nth-child(2){transform:translateY(45px)}.cd-services-mosaic{padding-bottom:calc(var(--cd-pad) + 45px)!important}
.cd-services-band{background:var(--s);color:#fff}.cd-services-band h2,.cd-services-band p{color:#fff!important}.cd-services-band .cd-service{border:0}.cd-services-index .cd-service-list{display:block}.cd-services-index .cd-service{display:grid;grid-template-columns:90px 1fr 1.5fr;border-width:1px 0 0}.cd-services-index .cd-service-media{display:none}.cd-services-index .cd-service-copy{grid-column:1/-1;display:grid;grid-template-columns:90px 1fr 1.5fr;gap:25px;align-items:start}.cd-services-index .cd-service-copy a{grid-column:3}
.cd-services-tiles .cd-service{border-radius:26px}.cd-services-tiles .cd-service-media{height:270px}.cd-services-darkgrid{background:#0b1220;color:#fff}.cd-services-darkgrid h2,.cd-services-darkgrid p{color:#fff!important}.cd-services-darkgrid .cd-service{background:#111827;border-color:#ffffff18}.cd-services-darkgrid .cd-service h3,.cd-services-darkgrid .cd-service p{color:#fff!important}
.cd-proof{background:var(--soft)}.cd-proof-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:85px}.cd-benefits{display:grid;grid-template-columns:1fr 1fr}.cd-benefits article{padding:30px;border-top:1px solid color-mix(in srgb,var(--ink) 18%,transparent);display:grid;grid-template-columns:40px 1fr;gap:12px}.cd-benefits article>b{color:var(--p)}.cd-proof-quote .cd-proof-grid>div:first-child h2{font-family:Georgia,serif;font-weight:500}.cd-proof-rail .cd-benefits{border-left:3px solid var(--a)}.cd-proof-metrics .cd-benefits article>b{font-size:30px}.cd-proof-line{background:#fff;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.cd-proof-soft{border-radius:0}.cd-proof-dark{background:#111827;color:#fff}.cd-proof-dark h2,.cd-proof-dark h3,.cd-proof-dark p{color:#fff!important}.cd-proof-dark .cd-benefits article{border-color:#ffffff24}
.cd-process h2{max-width:760px}.cd-process-list{margin-top:55px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.cd-process-list article{padding:30px;border-top:3px solid var(--a)}.cd-process-list strong{font-size:42px;color:var(--p)}.cd-process-roman .cd-process-list strong{font-family:Georgia,serif;font-weight:400}.cd-process-numbered .cd-process-list article{background:var(--soft);border:0}.cd-process-line .cd-process-list{border-top:1px solid var(--ink);gap:0}.cd-process-line .cd-process-list article{border:0;border-right:1px solid var(--ink)}.cd-process-soft .cd-process-list article{background:var(--soft);border:0;border-radius:24px}.cd-process-dark{background:#0b1220;color:#fff}.cd-process-dark h2,.cd-process-dark h3,.cd-process-dark p{color:#fff!important}
.cd-area>.wrap{display:grid;grid-template-columns:1.15fr .85fr;align-items:center}.cd-area-media{height:500px}.cd-area-copy{padding:60px;background:var(--surface);margin-left:-60px;position:relative}.cd-area-gallery{background:var(--soft)}.cd-area-panel .cd-area-copy{background:var(--s);color:#fff}.cd-area-panel .cd-area-copy h2,.cd-area-panel .cd-area-copy p{color:#fff!important}.cd-area-minimal .cd-area-media{height:380px}.cd-area-warm{background:var(--soft)}.cd-area-warm .cd-area-media{border-radius:30px}.cd-area-dark{background:#111827;color:#fff}.cd-area-dark .cd-area-copy{background:#0b1220}.cd-area-dark h2,.cd-area-dark p{color:#fff!important}
.cd-cta{background:var(--p);color:#fff;text-align:center}.cd-cta>.wrap{max-width:900px}.cd-cta h2,.cd-cta p{color:#fff!important}.cd-cta .actions{justify-content:center}.cd-cta .btn-light{background:#fff!important;color:#111827!important;border-color:#fff!important}
.cd-faq>.wrap{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}.cd-faq-list details{padding:20px 0;border-bottom:1px solid color-mix(in srgb,var(--ink) 18%,transparent)}.cd-faq-list summary{font-weight:850;display:flex;justify-content:space-between;cursor:pointer}.cd-faq-list summary i{font-style:normal;color:var(--p)}.cd-faq-columns .cd-faq-list{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.cd-faq-soft{background:var(--soft)}.cd-faq-dark{background:#0b1220;color:#fff}.cd-faq-dark h2,.cd-faq-dark p,.cd-faq-dark summary{color:#fff!important}.cd-faq-dark .cd-faq-list details{border-color:#ffffff22}
.cd-contact{background:#fff}.cd-contact>.wrap{display:grid;grid-template-columns:.7fr 1.3fr;gap:90px}.cd-contact .lead{box-shadow:0 30px 80px #0f172a12;border-radius:0;border-top:4px solid var(--a)}.cd-map{padding:0!important}.cd-map .map-card{border-radius:0!important;border-left:0;border-right:0}
.cd-luxury_editorial{font-family:"Helvetica Neue",Arial,sans-serif}.cd-luxury_editorial h1,.cd-luxury_editorial h2{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.045em!important}.cd-luxury_editorial .cd-kicker{color:var(--a)}
.cd-architectural_minimal h1,.cd-architectural_minimal h2{text-transform:none;font-weight:600}.cd-bold_conversion h1,.cd-bold_conversion h2{font-weight:900}.cd-warm_residential h1,.cd-warm_residential h2{letter-spacing:-.035em!important}.cd-dark_premium{background:#0b1220}
@media(max-width:900px){.cd-site .wrap{width:min(100% - 30px,1200px)}.cd-hero{min-height:0}.cd-hero-agency>.wrap,.cd-hero-editorial>.wrap,.cd-hero-conversion>.wrap,.cd-hero-minimal>.wrap,.cd-hero-warm>.wrap,.cd-section-title,.cd-proof-grid,.cd-area>.wrap,.cd-faq>.wrap,.cd-contact>.wrap{grid-template-columns:1fr}.cd-hero-media,.cd-hero-agency .cd-hero-media,.cd-hero-editorial .cd-hero-media,.cd-hero-conversion .cd-hero-media,.cd-hero-minimal .cd-hero-media,.cd-hero-warm .cd-hero-media{height:390px}.cd-conversion-panel{margin:0;padding:35px}.cd-editorial-number{display:none}.cd-service-list,.cd-services-journal .cd-service-list,.cd-benefits,.cd-process-list,.cd-faq-columns .cd-faq-list{grid-template-columns:1fr}.cd-services-mosaic .cd-service:nth-child(2){transform:none}.cd-services-index .cd-service-copy{grid-template-columns:55px 1fr}.cd-services-index .cd-service-copy p,.cd-services-index .cd-service-copy a{grid-column:2}.cd-area-copy{margin:0;padding:35px 0}.cd-hero-cinematic{min-height:650px}.cd-scroll{display:none}}\n/* Phase 4.0.1 true separation */
.cd-header{position:relative;z-index:50;background:#fff}.cd-header .wrap{width:min(1200px,calc(100% - 52px));margin:auto}.cd-header nav{display:flex;gap:24px;align-items:center}.cd-header .menu{display:none}.cd-head-editorial{border-bottom:1px solid #d9d0c4}.cd-head-editorial .cd-head-top{display:flex;justify-content:space-between;align-items:center;padding:24px 0 18px}.cd-head-editorial .cd-head-bottom{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-top:1px solid #eee6dc}.cd-head-editorial .cd-head-city{font-family:Georgia,serif;font-style:italic}.cd-head-agency{padding:16px 0}.cd-head-agency>.wrap,.cd-head-warm>.wrap,.cd-head-dark>.wrap{display:flex;align-items:center;justify-content:space-between;gap:28px}.cd-nav-pill{background:#f1f5f9;border-radius:999px;padding:11px 20px}.cd-head-conversion{background:var(--s);color:#fff;padding:13px 0}.cd-head-conversion>.wrap{display:flex;align-items:center;justify-content:space-between}.cd-head-conversion .logo,.cd-head-conversion nav a{color:#fff!important}.cd-head-right{display:flex;align-items:center;gap:24px}.cd-phone-label{display:grid}.cd-phone-label small{font-size:9px;letter-spacing:.15em;color:var(--a)}.cd-head-minimal{padding:25px 0}.cd-head-minimal>.wrap{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:30px}.cd-minimal-rule{height:1px;background:#cfd4d0}.cd-head-minimal nav{font-size:13px;letter-spacing:.08em;text-transform:uppercase}.cd-head-warm{padding:17px 0;background:#fffaf4}.cd-warm-nav{padding:9px 18px;border:1px solid #eadfd3;border-radius:16px}.cd-head-dark{padding:18px 0;background:#070d17;color:#fff}.cd-head-dark .logo,.cd-head-dark nav a{color:#fff!important}.cd-head-dark .btn{border-radius:0}
.cd-footer{padding:70px 0 25px}.cd-footer .wrap{width:min(1200px,calc(100% - 52px));margin:auto}.cd-footer a{display:block;margin:7px 0}.cd-foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:45px}.cd-foot-base{margin-top:50px;padding-top:18px;border-top:1px solid #ffffff20;display:flex;justify-content:space-between;font-size:12px}.cd-foot-editorial{background:#efe8dd;color:#201c18}.cd-foot-editorial .cd-foot-title{font:500 clamp(44px,7vw,92px)/1 Georgia,serif;border-bottom:1px solid #cfc3b5;padding-bottom:30px;margin-bottom:40px}.cd-foot-editorial .cd-foot-base{border-color:#cfc3b5}.cd-foot-agency{background:#102a43;color:#fff}.cd-foot-cta{display:flex;justify-content:space-between;align-items:end;padding-bottom:45px;margin-bottom:40px;border-bottom:1px solid #ffffff25}.cd-foot-cta h2{font-size:clamp(34px,4vw,58px);max-width:650px}.cd-foot-cta a{background:var(--a);color:#111;padding:15px 22px;font-weight:900}.cd-foot-conversion{background:var(--p);color:#fff}.cd-foot-call{text-align:center;padding-bottom:50px}.cd-foot-call h2{font-size:clamp(48px,8vw,105px);margin:10px 0}.cd-foot-minimal{background:#fff;color:#171b18}.cd-foot-line{height:2px;background:#171b18;margin-bottom:40px}.cd-foot-minimal .cd-foot-grid{grid-template-columns:2fr 1fr 1fr 1fr}.cd-foot-minimal .cd-foot-base{border-color:#d8ddd9}.cd-foot-warm{background:#3f5d50;color:#fff}.cd-foot-warm .cd-foot-grid{grid-template-columns:2fr 1fr 1fr}.cd-foot-warm .logo{color:#fff!important}.cd-foot-dark{background:#050a12;color:#fff}.cd-foot-signal{font-size:11px;letter-spacing:.16em}.cd-foot-signal span{display:inline-block;width:8px;height:8px;background:#4ade80;border-radius:50%;margin-right:8px}.cd-foot-dark .cd-foot-title{font-size:clamp(48px,7vw,100px);font-weight:800;letter-spacing:-.06em;padding:35px 0 55px}.cd-foot-dark .cd-foot-grid{grid-template-columns:repeat(4,1fr);border-top:1px solid #ffffff20;padding-top:30px}
.cd-luxury_editorial .cd-services{padding-top:145px}.cd-luxury_editorial .cd-proof{padding:150px 0}.cd-luxury_editorial .cd-process{padding:135px 0}.cd-luxury_editorial .cd-service{border:0;border-bottom:1px solid #cfc5b9}.cd-modern_agency .cd-services{background:#f4f8fb}.cd-modern_agency .cd-service{border-radius:22px;box-shadow:0 18px 45px #102a4310}.cd-modern_agency .cd-proof{background:#fff}.cd-bold_conversion .cd-section-title h2,.cd-bold_conversion .cd-process h2{text-transform:uppercase}.cd-bold_conversion .cd-proof{background:#fff5ed}.cd-bold_conversion .cd-cta{padding:95px 0;background:var(--s)}.cd-architectural_minimal .cd-services,.cd-architectural_minimal .cd-process,.cd-architectural_minimal .cd-faq{padding:150px 0}.cd-architectural_minimal .cd-section-title{border-bottom:1px solid #161a17;padding-bottom:35px}.cd-warm_residential .cd-services{background:#fffdf9}.cd-warm_residential .cd-service{box-shadow:0 15px 35px #6b4a3310;border:0}.cd-warm_residential .cd-proof{background:#fff5e9}.cd-warm_residential .cd-cta{border-radius:40px;margin:35px auto;width:min(1180px,calc(100% - 30px))}.cd-dark_premium .cd-services,.cd-dark_premium .cd-proof,.cd-dark_premium .cd-process,.cd-dark_premium .cd-area,.cd-dark_premium .cd-faq,.cd-dark_premium .cd-contact{background:#0b1220;color:#fff}.cd-dark_premium .cd-services h2,.cd-dark_premium .cd-services h3,.cd-dark_premium .cd-services p,.cd-dark_premium .cd-contact h2,.cd-dark_premium .cd-contact p{color:#fff!important}.cd-dark_premium .cd-contact .lead{background:#111827;border-color:#ffffff18}.cd-dark_premium .cd-contact .lead input,.cd-dark_premium .cd-contact .lead textarea,.cd-dark_premium .cd-contact .lead select{background:#0b1220;color:#fff;border-color:#ffffff24}
@media(max-width:900px){.cd-header .wrap{width:min(100% - 28px,1200px)}.cd-header nav{display:none}.cd-header .menu{display:block}.cd-head-editorial .cd-head-bottom{justify-content:flex-end}.cd-head-minimal>.wrap{grid-template-columns:1fr auto}.cd-head-minimal .cd-minimal-rule{display:none}.cd-head-right .cd-phone-label,.cd-head-right nav,.cd-warm-nav,.cd-dark-nav,.cd-head-actions{display:none}.cd-footer .wrap{width:min(100% - 30px,1200px)}.cd-foot-grid,.cd-foot-minimal .cd-foot-grid,.cd-foot-warm .cd-foot-grid,.cd-foot-dark .cd-foot-grid{grid-template-columns:1fr 1fr}.cd-foot-cta{align-items:start;flex-direction:column}.cd-foot-base{gap:20px;flex-direction:column}}

/* Phase 4.1 Step 1 — Header + Hero Revolution */
.cdh{position:relative;z-index:80;background:#fff;color:#111827;border-bottom:1px solid #e8e8e8}.cdh .wrap{width:min(1240px,calc(100% - 44px));margin:auto}.cdh nav{display:flex;gap:25px;align-items:center}.cdh nav a{font-size:13px;font-weight:750}.cdh .menu{display:none}.cdh-1>.wrap{height:78px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:38px}.cdh-1 .cdh-nav{justify-self:center}
.cdh-2 .cdh-strip{background:var(--s);color:#fff;font-size:10px;letter-spacing:.12em}.cdh-2 .cdh-strip .wrap{height:29px;display:flex;justify-content:space-between;align-items:center}.cdh-2 .cdh-main{height:74px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:35px}.cdh-2 .cdh-nav{justify-self:center}
.cdh-3{padding:18px 0}.cdh-3>.wrap{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.cdh-3 .cdh-center{justify-self:center}.cdh-3 .cdh-action{justify-self:end}
.cdh-4{background:rgba(15,23,42,.88);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:0;border-bottom:1px solid #ffffff24;position:absolute;width:100%;color:#fff}.cdh-4>.wrap{height:90px;display:flex;align-items:center;justify-content:space-between}.cdh-4 .logo,.cdh-4 nav a,.cdh-4 .brand-name,.cdh-4 .brand-name small{color:#fff!important}.cdh-4 .brand-name small{opacity:.76}.cdh-4 .cdh-desktop{display:flex;gap:30px;align-items:center}.cdh-menu-label{background:none;border:0;color:inherit;font-weight:850;letter-spacing:.1em}
.cdh-5>.wrap{min-height:88px;display:grid;grid-template-columns:auto auto 1fr auto;gap:34px;align-items:center}.cdh-5 .cdh-meta{border-left:1px solid #ddd;padding-left:24px;display:grid}.cdh-5 .cdh-meta small{font-size:9px;letter-spacing:.15em}.cdh-5 .cdh-nav{justify-self:end}
.cdh-6{padding:18px 0 0}.cdh-6 .cdh-row{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px}.cdh-6 .cdh-rule-row{border-top:1px solid #ddd;min-height:43px;display:flex;justify-content:space-between;align-items:center}.cdh-6 .cdh-rule-row span{font-size:9px;letter-spacing:.17em;color:#6b7280}

.cdv{position:relative;overflow:hidden}.cdv .wrap{width:min(1240px,calc(100% - 44px));margin:auto}.cdv h1{font-size:clamp(48px,6.4vw,88px)!important;line-height:.94!important;letter-spacing:-.055em!important;margin:0 0 25px}.cdv p{font-size:clamp(17px,1.45vw,21px);line-height:1.6}.cdv-ey{font-size:10px;font-weight:900;letter-spacing:.19em;color:var(--p);margin-bottom:20px}.cdv-img{width:100%;height:100%;object-fit:cover;display:block}.cdv-copy{position:relative;z-index:3}
.cdv-1{padding:75px 0 90px;background:var(--soft)}.cdv-1>.wrap{display:grid;grid-template-columns:.82fr 1.18fr;gap:72px;align-items:center;position:relative}.cdv-1 .cdv-media{height:610px}.cdv-1 .cdv-proof{position:absolute;right:0;bottom:-35px;background:var(--s);color:#fff;padding:18px 25px;display:grid;grid-template-columns:auto auto;gap:3px 18px;font-size:11px}.cdv-1 .cdv-proof b{color:var(--a)}
.cdv-2{min-height:790px;color:#fff;display:flex;align-items:flex-end}.cdv-2 .cdv-bg,.cdv-2 .cdv-shade{position:absolute;inset:0}.cdv-2 .cdv-bg img{width:100%;height:100%;object-fit:cover}.cdv-2 .cdv-shade{background:linear-gradient(90deg,#050b14ef 0 40%,#050b1470 68%,#050b1415)}.cdv-2>.wrap{position:relative;padding-bottom:80px}.cdv-2 .cdv-copy{max-width:720px}.cdv-2 h1,.cdv-2 p{color:#fff!important}.cdv-2 .cdv-ey{color:var(--a)}.cdv-2 .cdv-bottom{margin-top:70px;display:flex;gap:25px;align-items:center;border-top:1px solid #ffffff50;padding-top:20px;max-width:620px}.cdv-2 .cdv-bottom span{font-size:34px;color:var(--a)}.cdv-2 .cdv-bottom p{font-size:13px;margin:0}
.cdv-3{padding:85px 0 110px}.cdv-3 .cdv-top{display:grid;grid-template-columns:.35fr 1.65fr;align-items:start}.cdv-3 .cdv-top h1{max-width:1000px}.cdv-3 .cdv-stage{margin-top:35px;position:relative;width:86%;margin-left:auto}.cdv-3 .cdv-media{height:580px}.cdv-3 .cdv-float{position:absolute;left:-16%;bottom:45px;width:390px;background:#fff;padding:35px;box-shadow:0 25px 70px #11182725}.cdv-3 .cdv-float p{font-size:16px}
.cdv-4{padding:70px 0 110px;background:#f6f1e9}.cdv-4>.wrap{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.cdv-4 .cdv-number{position:absolute;top:-55px;left:34%;font:400 190px/1 Georgia,serif;color:color-mix(in srgb,var(--p) 10%,transparent)}.cdv-4 .cdv-collage{display:grid;grid-template-columns:1.2fr .8fr;gap:14px;align-items:end}.cdv-4 .cdv-collage>div:first-child{height:570px}.cdv-4 .cdv-collage>div:last-child{height:350px;margin-bottom:-45px}
.cdv-5{padding:65px 0 75px}.cdv-5 .cdv-line{height:1px;background:#111;margin-bottom:55px}.cdv-5 .cdv-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px;align-items:end}.cdv-5 .cdv-media{height:560px}.cdv-5 .cdv-copy{padding-bottom:40px}.cdv-5 .cdv-caption{border-top:1px solid #111;margin-top:28px;padding-top:14px;display:flex;justify-content:space-between;font-size:11px;text-transform:uppercase;letter-spacing:.1em}
.cdv-6{background:var(--s);color:#fff;padding:0}.cdv-6 .cdv-side{position:absolute;left:20px;top:50%;transform:translateY(-50%);writing-mode:vertical-rl;font-size:9px;letter-spacing:.2em;color:var(--a)}.cdv-6>.wrap{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;min-height:720px}.cdv-6 .cdv-media{height:620px}.cdv-6 .cdv-panel{padding:55px;margin-left:-65px;background:#fff;color:#111827;z-index:3}.cdv-6 .cdv-panel h1,.cdv-6 .cdv-panel p{color:#111827!important}
.cdv-7{padding:70px 0 0}.cdv-7 .cdv-intro{display:flex;justify-content:space-between;gap:50px;align-items:start}.cdv-7 .cdv-intro span{font-size:10px;letter-spacing:.18em;color:var(--p);font-weight:900}.cdv-7 .cdv-intro p{max-width:480px;margin:0;font-size:15px}.cdv-7 h1{max-width:1050px;margin:40px 0}.cdv-7 .cdv-wide{height:520px}.cdv-7 .cdv-actionbar{display:flex;justify-content:space-between;align-items:center;padding:22px 0 35px}.cdv-7 .cdv-actionbar .actions{margin:0}
.cdv-8{padding:75px 0 100px;background:#f4f6f8}.cdv-8>.wrap{position:relative;min-height:620px}.cdv-8 .cdv-card{position:absolute;left:0;top:55px;width:48%;background:var(--s);color:#fff;padding:52px;z-index:3}.cdv-8 .cdv-card h1,.cdv-8 .cdv-card p{color:#fff!important}.cdv-8 .cdv-card .cdv-ey{color:var(--a)}.cdv-8 .cdv-photo{position:absolute;right:0;top:0;width:61%;height:570px}.cdv-8 .cdv-accent{position:absolute;right:54%;bottom:10px;width:120px;height:120px;background:var(--a);z-index:4}.cdv-8 .cdv-note{position:absolute;right:0;bottom:10px;background:#fff;padding:18px 25px;font-size:10px;letter-spacing:.12em;z-index:4}

@media(max-width:900px){
 .cdh .wrap{width:min(100% - 28px,1240px)}.cdh nav,.cdh .cdh-nav,.cdh .cdh-desktop,.cdh .cdh-meta,.cdh .cdh-rule-row{display:none!important}.cdh .menu{display:block}.cdh-1>.wrap,.cdh-2 .cdh-main,.cdh-3>.wrap,.cdh-5>.wrap{height:72px;min-height:72px;display:flex;justify-content:space-between}.cdh-3 .cdh-action,.cdh-5 .cdh-action{margin-left:auto}.cdh-4{position:relative;background:var(--s)}.cdh-6{padding:0}.cdh-6 .cdh-row{height:72px;padding:0}
 .cdv .wrap{width:min(100% - 30px,1240px)}.cdv h1{font-size:clamp(43px,12vw,64px)!important}.cdv-1>.wrap,.cdv-4>.wrap,.cdv-5 .cdv-grid,.cdv-6>.wrap{grid-template-columns:1fr}.cdv-1,.cdv-3,.cdv-4,.cdv-5,.cdv-8{padding:55px 0}.cdv-1 .cdv-media,.cdv-4 .cdv-collage>div:first-child,.cdv-5 .cdv-media,.cdv-6 .cdv-media,.cdv-7 .cdv-wide{height:390px}.cdv-1 .cdv-proof{position:static;margin-top:-72px;margin-left:30px;width:max-content}.cdv-2{min-height:650px}.cdv-3 .cdv-top{display:block}.cdv-3 .cdv-stage{width:100%;margin-top:30px}.cdv-3 .cdv-media{height:420px}.cdv-3 .cdv-float{position:relative;left:auto;bottom:auto;width:calc(100% - 30px);margin:-55px auto 0}.cdv-4 .cdv-number{display:none}.cdv-4 .cdv-collage>div:last-child{display:none}.cdv-5 .cdv-caption{gap:15px;flex-wrap:wrap}.cdv-6 .cdv-panel{margin:-70px 18px 0;padding:35px}.cdv-6 .cdv-side{display:none}.cdv-7 .cdv-intro{display:block}.cdv-7 .cdv-intro p{margin-top:15px}.cdv-7 .cdv-actionbar{align-items:flex-start;flex-direction:column;gap:15px}.cdv-8>.wrap{min-height:0}.cdv-8 .cdv-card,.cdv-8 .cdv-photo{position:relative;left:auto;right:auto;top:auto;width:100%}.cdv-8 .cdv-card{padding:35px}.cdv-8 .cdv-photo{height:390px}.cdv-8 .cdv-accent,.cdv-8 .cdv-note{display:none}
}

/* Phase 4.1.1 — refined hero scale + organized first content section */
.cdv h1{font-size:clamp(38px,4.35vw,64px)!important;line-height:1.01!important;letter-spacing:-.042em!important;max-width:780px}
.cdv p{font-size:clamp(16px,1.2vw,19px);line-height:1.65;max-width:620px}
.cdv-1{padding:62px 0 72px}.cdv-1>.wrap{gap:58px}.cdv-1 .cdv-media{height:520px}
.cdv-2{min-height:660px}.cdv-2 .cdv-copy{max-width:670px}.cdv-2>.wrap{padding-bottom:65px}
.cdv-3{padding:65px 0 85px}.cdv-3 .cdv-stage{margin-top:28px}.cdv-3 .cdv-media{height:500px}.cdv-3 .cdv-float{width:370px;padding:30px}
.cdv-4{padding:62px 0 85px}.cdv-4>.wrap{gap:55px}.cdv-4 .cdv-collage>div:first-child{height:500px}.cdv-4 .cdv-collage>div:last-child{height:310px}
.cdv-5{padding:58px 0 65px}.cdv-5 .cdv-grid{gap:65px}.cdv-5 .cdv-media{height:500px}
.cdv-6>.wrap{min-height:620px}.cdv-6 .cdv-media{height:530px}.cdv-6 .cdv-panel{padding:44px}
.cdv-7{padding-top:58px}.cdv-7 h1{margin:30px 0;max-width:900px}.cdv-7 .cdv-wide{height:455px}
.cdv-8{padding:62px 0 78px}.cdv-8>.wrap{min-height:540px}.cdv-8 .cdv-card{top:42px;padding:42px;width:47%}.cdv-8 .cdv-photo{height:500px}

.cd-intro-section{padding:90px 0!important;background:#fff;color:#111827;border-bottom:1px solid #e8eaed}
.cd-intro-section>.wrap{width:min(1180px,calc(100% - 52px));margin:auto;display:grid;grid-template-columns:.9fr .72fr 1fr;gap:54px;align-items:start}
.cd-intro-copy h2{font-size:clamp(30px,3.15vw,46px)!important;line-height:1.06!important;letter-spacing:-.035em!important;margin:0 0 22px;max-width:520px}
.cd-intro-lead{font-size:16px!important;line-height:1.72!important;color:#52606d;max-width:540px!important}
.cd-intro-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.cd-intro-media{height:330px;overflow:hidden;background:#eef1f3}.cd-intro-media img{width:100%;height:100%;object-fit:cover;display:block}
.cd-intro-points{border-top:1px solid #d9dee3}
.cd-intro-point{display:grid;grid-template-columns:36px 1fr;gap:12px;padding:19px 0;border-bottom:1px solid #d9dee3}
.cd-intro-point>span{font-size:11px;font-weight:900;color:var(--p);padding-top:3px}.cd-intro-point b{display:block;font-size:15px;line-height:1.25;margin-bottom:6px}.cd-intro-point p{font-size:13px!important;line-height:1.55!important;color:#64748b;margin:0!important}
.cd-intro-section+.cd-services,.cd-intro-section+.cd-proof{padding-top:100px!important}

/* keep the first two screens visually disciplined even for serif directions */
.cd-luxury_editorial .cdv h1,.cd-luxury_editorial .cd-intro-copy h2{letter-spacing:-.035em!important}
.cd-dark_premium .cd-intro-section{background:#0b1220;color:#fff;border-color:#ffffff18}.cd-dark_premium .cd-intro-copy h2,.cd-dark_premium .cd-intro-point b{color:#fff!important}.cd-dark_premium .cd-intro-lead,.cd-dark_premium .cd-intro-point p{color:#cbd5e1!important}.cd-dark_premium .cd-intro-points,.cd-dark_premium .cd-intro-point{border-color:#ffffff20}

@media(max-width:900px){
 .cdv h1{font-size:clamp(36px,10.5vw,54px)!important}
 .cdv-1 .cdv-media,.cdv-3 .cdv-media,.cdv-4 .cdv-collage>div:first-child,.cdv-5 .cdv-media,.cdv-6 .cdv-media,.cdv-7 .cdv-wide{height:350px}
 .cdv-2{min-height:590px}.cdv-8>.wrap{min-height:0}.cdv-8 .cdv-photo{height:350px}
 .cd-intro-section{padding:65px 0!important}.cd-intro-section>.wrap{width:min(100% - 30px,1180px);grid-template-columns:1fr;gap:32px}.cd-intro-media{height:300px}.cd-intro-points{margin-top:5px}
}

/* Phase 4.2 — Cleaner Services + Why Us */
.cd-site{--clean-border:#e5e9ec;--clean-muted:#66727d}
.cd-clean-services{padding:92px 0!important;background:#fff;color:#111827}
.cd-clean-services>.wrap,.cd-clean-why>.wrap{width:min(1160px,calc(100% - 52px));margin:auto}
.cd-clean-heading{display:grid;grid-template-columns:1fr .82fr;gap:82px;align-items:end;margin-bottom:44px}
.cd-clean-heading h2{font-size:clamp(31px,3.2vw,46px)!important;line-height:1.06!important;letter-spacing:-.034em!important;max-width:570px;margin:0}
.cd-clean-heading>p{font-size:15px!important;line-height:1.68!important;color:var(--clean-muted);max-width:500px;margin:0}
.cd-clean-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cd-clean-service{background:#fff;border:1px solid var(--clean-border);overflow:hidden;min-width:0}
.cd-clean-service-media{height:220px;overflow:hidden;background:#eef1f3}.cd-clean-service-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.cd-clean-service:hover .cd-clean-service-media img{transform:scale(1.02)}
.cd-clean-service-copy{padding:23px 22px 25px}.cd-clean-service-copy>span{display:block;font-size:10px;font-weight:900;letter-spacing:.12em;color:var(--p);margin-bottom:12px}
.cd-clean-service-copy h3{font-size:20px!important;line-height:1.15!important;letter-spacing:-.018em!important;margin:0 0 10px}
.cd-clean-service-copy p{font-size:14px!important;line-height:1.58!important;color:var(--clean-muted);margin:0 0 18px;min-height:66px}
.cd-clean-service-copy a{font-size:12px;font-weight:900;color:var(--p);text-decoration:none}
.cd-clean-services-journal .cd-clean-service-grid{grid-template-columns:1.3fr .85fr .85fr}.cd-clean-services-journal .cd-clean-service:first-child .cd-clean-service-media{height:290px}
.cd-clean-services-mosaic .cd-clean-service:nth-child(2){margin-top:28px}.cd-clean-services-mosaic .cd-clean-service:nth-child(3){margin-top:56px}
.cd-clean-services-band{background:#f5f7f8}.cd-clean-services-band .cd-clean-service{border:0;box-shadow:0 12px 30px #0f172a0a}
.cd-clean-services-index .cd-clean-service-grid{display:block;border-top:1px solid var(--clean-border)}.cd-clean-services-index .cd-clean-service{display:grid;grid-template-columns:210px 1fr;border-width:0 0 1px;align-items:center}.cd-clean-services-index .cd-clean-service-media{height:145px}.cd-clean-services-index .cd-clean-service-copy p{min-height:0}
.cd-clean-services-tiles .cd-clean-service{border-radius:16px}.cd-clean-services-darkgrid{background:#0b1220;color:#fff}.cd-clean-services-darkgrid .cd-clean-heading h2{color:#fff!important}.cd-clean-services-darkgrid .cd-clean-heading>p{color:#cbd5e1}.cd-clean-services-darkgrid .cd-clean-service{background:#111827;border-color:#ffffff18}.cd-clean-services-darkgrid .cd-clean-service h3{color:#fff!important}.cd-clean-services-darkgrid .cd-clean-service p{color:#cbd5e1!important}

.cd-clean-why{padding:96px 0!important;background:#f7f5f1;color:#111827}
.cd-clean-why>.wrap{display:grid;grid-template-columns:.78fr 1.22fr;gap:88px;align-items:start}
.cd-clean-why-title h2{font-size:clamp(31px,3.2vw,46px)!important;line-height:1.05!important;letter-spacing:-.034em!important;margin:0 0 18px;max-width:470px}
.cd-clean-why-title>p{font-size:15px!important;line-height:1.68!important;color:var(--clean-muted);max-width:450px}
.cd-clean-proof-list{border-top:1px solid #d9d7d1}.cd-clean-proof-list article{display:grid;grid-template-columns:42px 1fr;gap:17px;padding:23px 0;border-bottom:1px solid #d9d7d1}
.cd-clean-proof-list article>span{font-size:10px;font-weight:900;color:var(--p);padding-top:4px}.cd-clean-proof-list h3{font-size:19px!important;line-height:1.17!important;margin:0 0 7px}.cd-clean-proof-list p{font-size:14px!important;line-height:1.56!important;color:var(--clean-muted);margin:0;max-width:570px}
.cd-clean-why-quote{background:#f6f0e8}.cd-clean-why-rail{background:#f4f7f8}.cd-clean-why-line{background:#fff;border-top:1px solid var(--clean-border);border-bottom:1px solid var(--clean-border)}.cd-clean-why-soft{background:#fff7ed}
.cd-clean-why-dark{background:#111827;color:#fff}.cd-clean-why-dark .cd-clean-why-title h2,.cd-clean-why-dark .cd-clean-proof-list h3{color:#fff!important}.cd-clean-why-dark .cd-clean-why-title>p,.cd-clean-why-dark .cd-clean-proof-list p{color:#cbd5e1!important}.cd-clean-why-dark .cd-clean-proof-list,.cd-clean-why-dark .cd-clean-proof-list article{border-color:#ffffff20}
@media(max-width:900px){.cd-clean-services{padding:68px 0!important}.cd-clean-services>.wrap,.cd-clean-why>.wrap{width:min(100% - 30px,1160px)}.cd-clean-heading,.cd-clean-why>.wrap{grid-template-columns:1fr;gap:30px}.cd-clean-heading{margin-bottom:32px}.cd-clean-service-grid,.cd-clean-services-journal .cd-clean-service-grid{grid-template-columns:1fr}.cd-clean-services-mosaic .cd-clean-service:nth-child(2),.cd-clean-services-mosaic .cd-clean-service:nth-child(3){margin-top:0}.cd-clean-services-index .cd-clean-service{grid-template-columns:115px 1fr}.cd-clean-services-index .cd-clean-service-media{height:125px}.cd-clean-why{padding:68px 0!important}.cd-clean-service-copy p{min-height:0}}

/* Phase 4.3 — Reference-Inspired Clean Local Service System
   IMPORTANT: --p = user's Primary Color, --s = user's Secondary Color.
   The design derives supporting tints from them; it does not replace them. */
.cd-site{
 --ref-primary:var(--p);
 --ref-secondary:var(--s);
 --ref-soft:color-mix(in srgb,var(--p) 6%,#f8fafc);
 --ref-soft2:color-mix(in srgb,var(--p) 10%,#f1f5f9);
 --ref-line:color-mix(in srgb,var(--p) 14%,#e5e7eb);
 --ref-dark:color-mix(in srgb,var(--s) 78%,#07111f);
 --ref-muted:#667085;
 --ref-radius:14px;
}
.cd-site body,.cd-site{font-feature-settings:"kern" 1}

/* HEADER — keep architecture, refine into compact clean product header */
.cdh{box-shadow:0 1px 0 #0f172a0a}
.cdh .btn,.cdh-action .btn{border-radius:8px!important}
.cdh nav a{font-size:12px!important;letter-spacing:-.01em}

/* HERO — same variant engine, new visual language */
.cdv{background:var(--ref-soft)!important}
.cdv .wrap{width:min(1160px,calc(100% - 52px))}
.cdv h1{font-family:inherit!important;font-size:clamp(38px,4vw,58px)!important;line-height:1.01!important;letter-spacing:-.045em!important;font-weight:800!important}
.cdv p{font-size:15px!important;line-height:1.65!important;color:var(--ref-muted)}
.cdv-ey{color:var(--ref-primary)!important;font-size:9px!important;letter-spacing:.16em!important}
.cdv .actions .btn{border-radius:8px!important;padding:12px 17px!important}
.cdv img{filter:none!important}
.cdv-1{padding:68px 0 76px!important}.cdv-1>.wrap{grid-template-columns:.9fr 1.1fr!important;gap:64px!important}.cdv-1 .cdv-media{height:440px!important;border-radius:18px;overflow:hidden;box-shadow:0 18px 45px #0f172a14}.cdv-1 .cdv-proof{border-radius:10px!important;right:18px!important;bottom:-22px!important}
.cdv-2{min-height:600px!important}.cdv-2 .cdv-shade{background:linear-gradient(90deg,color-mix(in srgb,var(--ref-dark) 96%,transparent) 0 38%,color-mix(in srgb,var(--ref-dark) 58%,transparent) 70%,transparent)!important}.cdv-2 p{color:#eef2f6!important}
.cdv-3{padding:70px 0 82px!important}.cdv-3 .cdv-media{height:455px!important;border-radius:18px;overflow:hidden}.cdv-3 .cdv-float{border-radius:14px!important;box-shadow:0 20px 55px #0f172a18!important}
.cdv-4{background:var(--ref-soft)!important}.cdv-4 .cdv-collage>div{border-radius:14px;overflow:hidden}
.cdv-5 .cdv-media{height:455px!important;border-radius:16px;overflow:hidden}.cdv-5 .cdv-line,.cdv-5 .cdv-caption{border-color:var(--ref-line)!important}
.cdv-6{background:var(--ref-dark)!important}.cdv-6 .cdv-media{border-radius:16px;overflow:hidden}.cdv-6 .cdv-panel{border-radius:14px!important;box-shadow:0 20px 60px #0002}
.cdv-7 .cdv-wide{height:430px!important;border-radius:18px;overflow:hidden}
.cdv-8{background:var(--ref-soft)!important}.cdv-8 .cdv-card{background:var(--ref-dark)!important;border-radius:14px!important}.cdv-8 .cdv-photo{height:460px!important;border-radius:18px;overflow:hidden}.cdv-8 .cdv-accent{background:var(--ref-primary)!important;border-radius:12px}

/* INTRO / TRUST — turn it into the clean structured block seen in the reference */
.cd-intro-section{padding:76px 0!important;background:#fff!important}
.cd-intro-section>.wrap{width:min(1160px,calc(100% - 52px));grid-template-columns:.9fr .72fr 1fr!important;gap:48px!important}
.cd-intro-copy h2{font-family:inherit!important;font-weight:800!important;font-size:clamp(30px,3vw,43px)!important;letter-spacing:-.04em!important}
.cd-intro-media{height:300px!important;border-radius:14px!important}
.cd-intro-points{border-color:var(--ref-line)!important}
.cd-intro-point{border-color:var(--ref-line)!important}
.cd-intro-point>span{color:var(--ref-primary)!important}

/* SERVICES — reference-like clean 3-column card grid with six-item support */
.cd-clean-services{background:var(--ref-soft)!important;padding:84px 0!important}
.cd-clean-heading{gap:70px!important;margin-bottom:38px!important}
.cd-clean-heading h2{font-family:inherit!important;font-size:clamp(30px,3vw,43px)!important;font-weight:800!important;letter-spacing:-.04em!important}
.cd-clean-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}
.cd-clean-service{border:1px solid var(--ref-line)!important;border-radius:12px!important;box-shadow:0 8px 24px #0f172a0a!important}
.cd-clean-service-media{height:205px!important}
.cd-clean-service-copy{padding:20px 19px 22px!important}
.cd-clean-service-copy h3{font-family:inherit!important;font-size:17px!important;font-weight:800!important}
.cd-clean-service-copy p{font-size:13px!important;min-height:0!important}
.cd-clean-service-copy>span,.cd-clean-service-copy a{color:var(--ref-primary)!important}
.cd-clean-services-journal .cd-clean-service-grid,.cd-clean-services-mosaic .cd-clean-service-grid,.cd-clean-services-band .cd-clean-service-grid,.cd-clean-services-tiles .cd-clean-service-grid,.cd-clean-services-darkgrid .cd-clean-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.cd-clean-services-journal .cd-clean-service:first-child .cd-clean-service-media{height:205px!important}
.cd-clean-services-mosaic .cd-clean-service:nth-child(2),.cd-clean-services-mosaic .cd-clean-service:nth-child(3){margin-top:0!important}
.cd-clean-services-index .cd-clean-service-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;border:0!important}
.cd-clean-services-index .cd-clean-service{display:block!important;border:1px solid var(--ref-line)!important}.cd-clean-services-index .cd-clean-service-media{height:205px!important}
.cd-clean-services-darkgrid{background:var(--ref-soft)!important;color:#111827!important}.cd-clean-services-darkgrid .cd-clean-heading h2,.cd-clean-services-darkgrid .cd-clean-service h3{color:#111827!important}.cd-clean-services-darkgrid .cd-clean-heading>p,.cd-clean-services-darkgrid .cd-clean-service p{color:var(--ref-muted)!important}.cd-clean-services-darkgrid .cd-clean-service{background:#fff!important;border-color:var(--ref-line)!important}

/* WHY US — premium gradient band driven by user's two chosen colors */
.cd-clean-why{
 padding:82px 0!important;
 background:linear-gradient(118deg,
   color-mix(in srgb,var(--ref-primary) 18%,#f8fafc) 0%,
   color-mix(in srgb,var(--ref-secondary) 35%,#eef2f7) 55%,
   color-mix(in srgb,var(--ref-secondary) 78%,#0f172a) 100%)!important;
 color:#111827!important
}
.cd-clean-why>.wrap{grid-template-columns:.82fr 1.18fr!important;gap:70px!important}
.cd-clean-why-title h2{font-family:inherit!important;font-weight:800!important;font-size:clamp(30px,3vw,43px)!important;letter-spacing:-.04em!important}
.cd-clean-proof-list{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;border:0!important}
.cd-clean-proof-list article{background:#ffffff12!important;border:1px solid #ffffff28!important;border-radius:10px!important;padding:20px!important;grid-template-columns:28px 1fr!important;backdrop-filter:blur(4px)}
.cd-clean-proof-list article>span{color:var(--ref-primary)!important}
.cd-clean-proof-list h3{font-family:inherit!important;font-size:16px!important;font-weight:800!important}
.cd-clean-proof-list p{font-size:13px!important}
.cd-clean-why-dark{background:linear-gradient(118deg,color-mix(in srgb,var(--ref-primary) 25%,#0f172a),var(--ref-dark))!important;color:#fff!important}
.cd-clean-why-dark .cd-clean-why-title h2,.cd-clean-why-dark .cd-clean-proof-list h3{color:#fff!important}
.cd-clean-why-dark .cd-clean-why-title>p,.cd-clean-why-dark .cd-clean-proof-list p{color:#e5e7eb!important}

/* LOWER PAGE — clean the legacy visual language without changing backend/content */
.cd-site section:not(.cdv):not(.cd-intro-section):not(.cd-clean-services):not(.cd-clean-why){scroll-margin-top:80px}
.cd-site .btn{border-radius:8px!important}
.cd-site input,.cd-site select,.cd-site textarea{border-radius:8px!important}
.cd-site details{border-radius:10px!important}
.cd-site #faq{background:var(--ref-soft)!important}
.cd-site #contact{background:#fff!important}
.cd-site footer{background:var(--ref-dark)!important;color:#e8edf2!important}

/* USER COLOR AUTHORITY
   Primary controls buttons, links, micro-labels and accents.
   Secondary controls dark/deep surfaces and footer. */
.cd-site .btn.primary,.cd-site button[type="submit"]{background:var(--ref-primary)!important;border-color:var(--ref-primary)!important}
.cd-site a:not(nav a):not(.btn){text-decoration-color:color-mix(in srgb,var(--ref-primary) 35%,transparent)}
.cd-site .cd-kicker{color:var(--ref-primary)!important}

@media(max-width:900px){
 .cdv .wrap,.cd-intro-section>.wrap{width:min(100% - 30px,1160px)}
 .cdv h1{font-size:clamp(34px,9.5vw,50px)!important}
 .cdv-1>.wrap{grid-template-columns:1fr!important;gap:34px!important}.cdv-1 .cdv-media,.cdv-3 .cdv-media,.cdv-5 .cdv-media,.cdv-7 .cdv-wide,.cdv-8 .cdv-photo{height:330px!important}
 .cd-intro-section>.wrap{grid-template-columns:1fr!important}
 .cd-clean-service-grid,.cd-clean-services-journal .cd-clean-service-grid,.cd-clean-services-mosaic .cd-clean-service-grid,.cd-clean-services-band .cd-clean-service-grid,.cd-clean-services-tiles .cd-clean-service-grid,.cd-clean-services-darkgrid .cd-clean-service-grid,.cd-clean-services-index .cd-clean-service-grid{grid-template-columns:1fr!important}
 .cd-clean-service-media,.cd-clean-services-journal .cd-clean-service:first-child .cd-clean-service-media,.cd-clean-services-index .cd-clean-service-media{height:220px!important}
 .cd-clean-why>.wrap{grid-template-columns:1fr!important;gap:35px!important}.cd-clean-proof-list{grid-template-columns:1fr!important}
}

/* Phase 4.3.1 — Content-Aware Layout Balance + Compact Footer + No Decorative Numbers */
.cd-site .cdv-number,.cd-site .cd-clean-service-copy>span,.cd-site .cd-clean-proof-list article>span,.cd-site .cd-intro-point>span,.cd-site .cd-process-list article>strong{display:none!important}
.cd-site .cdv-bottom>span{display:none!important}
.cd-intro-section,.cd-clean-services,.cd-clean-why,.cd-process,.cd-area,.cd-faq,.cd-contact{min-height:0!important;height:auto!important}
.cd-intro-section{padding:68px 0!important}.cd-intro-section>.wrap{align-items:center!important}.cd-intro-copy,.cd-intro-points{align-self:center!important}.cd-intro-lead{max-width:600px!important;margin-bottom:22px!important}
.cd-intro-point{grid-template-columns:1fr!important;padding:17px 0!important}.cd-intro-point p{margin-top:6px!important}
.cd-clean-services{padding:72px 0!important}.cd-clean-heading{align-items:start!important;margin-bottom:32px!important}.cd-clean-heading>p{max-width:520px!important}
.cd-clean-why{padding:72px 0!important}.cd-clean-why>.wrap{align-items:center!important}.cd-clean-why-title{align-self:center!important}.cd-clean-why-title>p{max-width:500px!important}
.cd-clean-proof-list article{grid-template-columns:1fr!important;min-height:0!important}.cd-clean-proof-list{align-self:center!important}
.cd-process{padding:72px 0!important}.cd-process-list{margin-top:30px!important}.cd-process-list article{min-height:0!important;height:auto!important}.cd-process-list article>div{width:100%!important}
.cd-area{padding:72px 0!important}.cd-area>.wrap{align-items:center!important}.cd-area-media,.cd-area-copy{align-self:center!important}
.cd-faq{padding:72px 0!important}.cd-contact{padding:72px 0!important}.cd-map{margin:0!important;padding:0!important}
.cd-architectural_minimal .cd-services,.cd-architectural_minimal .cd-process,.cd-architectural_minimal .cd-faq{padding:72px 0!important}
.cd-warm_residential .cd-cta{margin:20px auto!important}
/* Compact footer: one true footer, not a second hero */
.cd-footer.cd-foot-compact{background:var(--ref-dark,var(--s))!important;color:#fff!important;padding:42px 0 18px!important;min-height:0!important}
.cd-foot-compact .wrap{width:min(1160px,calc(100% - 52px));margin:auto}
.cd-foot-compact .cd-foot-cta{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:32px!important;padding:0 0 28px!important;margin:0 0 28px!important;border-bottom:1px solid #ffffff20!important}
.cd-foot-compact .cd-foot-cta small{display:block;font-size:9px;letter-spacing:.16em;color:#ffffff99;margin-bottom:7px}
.cd-foot-compact .cd-foot-cta h2{font-family:inherit!important;font-size:clamp(24px,2.4vw,34px)!important;line-height:1.08!important;letter-spacing:-.03em!important;max-width:none!important;margin:0!important;color:#fff!important}
.cd-foot-compact .cd-foot-request{display:inline-block!important;flex:0 0 auto;background:var(--ref-primary,var(--p))!important;color:#fff!important;padding:11px 16px!important;border-radius:8px!important;font-size:12px!important;font-weight:850!important;text-decoration:none!important;margin:0!important}
.cd-foot-compact .cd-foot-grid{display:grid!important;grid-template-columns:1.45fr .65fr 1fr 1fr!important;gap:38px!important;align-items:start!important}
.cd-foot-compact .cd-foot-grid small{font-size:9px;letter-spacing:.14em;color:#ffffff80}.cd-foot-compact .cd-foot-grid p{font-size:12px!important;line-height:1.6!important;color:#dbe4ec!important;margin:8px 0 0!important}.cd-foot-compact .cd-foot-grid a{font-size:12px!important;color:#fff!important;margin:7px 0!important}.cd-foot-compact .cd-foot-brand p{color:#ffffff80!important}.cd-foot-compact .logo{color:#fff!important}
.cd-foot-compact .cd-foot-base{margin-top:28px!important;padding-top:14px!important;border-top:1px solid #ffffff18!important;display:flex!important;justify-content:space-between!important;gap:20px!important;font-size:10px!important;color:#ffffff70!important}
@media(max-width:900px){.cd-intro-section,.cd-clean-services,.cd-clean-why,.cd-process,.cd-area,.cd-faq,.cd-contact{padding:54px 0!important}.cd-foot-compact .wrap{width:min(100% - 30px,1160px)}.cd-foot-compact .cd-foot-cta{align-items:flex-start!important;flex-direction:column!important;gap:18px!important}.cd-foot-compact .cd-foot-grid{grid-template-columns:1fr 1fr!important;gap:26px!important}.cd-foot-compact .cd-foot-base{flex-direction:column!important;gap:6px!important}}
@media(max-width:560px){.cd-foot-compact .cd-foot-grid{grid-template-columns:1fr!important}.cd-foot-compact{padding-top:34px!important}}
/* Phase 4.4C — Visual Rhythm & Lower-Page Diversity */
.dna44-structure-authority_first .tic-area{background:var(--soft)}
.dna44-structure-service_first [id="services"]{padding-top:clamp(58px,7vw,88px)}
.dna44-structure-story_first [id="why"] h2{max-width:18ch}
.dna44-structure-process_first .tic-process-grid{counter-reset:awb44step}.dna44-structure-process_first .tic-process-grid>*{position:relative}.dna44-structure-process_first .tic-process-grid>*:before{counter-increment:awb44step;content:"0" counter(awb44step);display:block;font-size:12px;font-weight:900;letter-spacing:.12em;color:var(--p);margin-bottom:14px}
.dna44-structure-editorial_flow .tic h2{max-width:17ch}.dna44-structure-editorial_flow .tic-area>.wrap{align-items:start}
.dna44-structure-conversion_first .tic-cta>.wrap{min-height:190px}.dna44-structure-conversion_first .tic-cta .btn{min-width:190px}
.dna44-lower-contact_map_split .tic-contact>.wrap{grid-template-columns:.7fr 1.3fr}.dna44-lower-contact_map_split .tic-map .wrap{width:min(1180px,calc(100% - 48px))}
.dna44-lower-form_focus .tic-contact>.wrap{grid-template-columns:.58fr 1.42fr}.dna44-lower-form_focus .tic-contact .lead{padding:clamp(28px,4vw,42px)}
.dna44-lower-compact_contact .tic-contact{padding-top:56px!important;padding-bottom:56px!important}.dna44-lower-compact_contact .tic-map{padding-bottom:34px!important}
.dna44-lower-cta_contact .tic-contact{background:var(--soft)}.dna44-lower-cta_contact .tic-contact>.wrap{grid-template-columns:1fr 1fr}
.dna44-lower-editorial_contact .tic-contact>.wrap{align-items:start}.dna44-lower-editorial_contact .tic-contact h2{font-size:clamp(36px,5vw,62px)}
.dna44-proof-factual_points .tic-trust-box{border-radius:0}.dna44-proof-service_facts .tic-trust-box span:first-child{font-weight:900}.dna44-proof-local_context .tic-area h2{max-width:15ch}

/* FAQ families */
.dna44-faq-split_editorial [id="faq"]>.wrap{display:grid;grid-template-columns:.58fr 1.42fr;gap:clamp(34px,6vw,82px);align-items:start}.dna44-faq-split_editorial [id="faq"] h2{position:sticky;top:90px}
.dna44-faq-two_column [id="faq"] details{display:inline-block;width:calc(50% - 12px);vertical-align:top;margin-right:8px;box-sizing:border-box}.dna44-faq-two_column [id="faq"] details:nth-of-type(even){margin-right:0}
.dna44-faq-numbered [id="faq"]{counter-reset:faq44}.dna44-faq-numbered [id="faq"] details{counter-increment:faq44;position:relative;padding-left:52px}.dna44-faq-numbered [id="faq"] details:before{content:"0" counter(faq44);position:absolute;left:0;top:18px;font-size:11px;font-weight:900;letter-spacing:.12em;color:var(--p)}
/* Lower-page endings */
.dna44-ending-compact_finish .tic-contact,.dna44-ending-compact_finish .comp-contact{padding-top:52px!important;padding-bottom:52px!important}.dna44-ending-compact_finish .tic-map,.dna44-ending-compact_finish .comp-map{padding-top:24px!important;padding-bottom:40px!important}
.dna44-ending-map_contact .tic-map,.dna44-ending-map_contact .comp-map{background:#fff}.dna44-ending-map_contact .tic-contact,.dna44-ending-map_contact .comp-contact{background:var(--soft)}
.dna44-ending-cta_contact .tic-contact,.dna44-ending-cta_contact .comp-contact{background:color-mix(in srgb,var(--p) 6%,#fff)}
/* Density balancing: prevent long runs of oversized whitespace. */
.dna44-density-compact .tic section,.dna44-density-compact .comp-site section{padding-top:clamp(46px,5vw,68px);padding-bottom:clamp(46px,5vw,68px)}
.dna44-density-balanced .tic section,.dna44-density-balanced .comp-site section{padding-top:clamp(54px,6vw,82px);padding-bottom:clamp(54px,6vw,82px)}
.dna44-density-airy .tic section,.dna44-density-airy .comp-site section{padding-top:clamp(62px,7vw,96px);padding-bottom:clamp(62px,7vw,96px)}
/* Image rhythm: text-heavy families get stronger media presence without inventing assets. */
.dna44-images-image_rich .tic-area img,.dna44-images-image_rich .comp-area img{min-height:390px;object-fit:cover}.dna44-images-image_rich [id="services"] img{object-fit:cover}
.dna44-images-editorial [id="services"] img{filter:saturate(.78);}.dna44-images-editorial .tic-area img,.dna44-images-editorial .comp-area img{border-radius:0!important}

/* Phase 4.5A3 stable desktop readability floor — desktop only. */
@media(min-width:901px){
 body{font-size:16px}
 .wrap{width:min(1240px,calc(100% - 64px))}
 .nav nav,.site-header nav{font-size:15px!important}
 .tic p,.comp-site p{font-size:16px;line-height:1.68}
 .tic [id="services"] p,.tic [id="why"] p,.tic [class*="process"] p,.tic [id="faq"] p,.comp-site [id="services"] p,.comp-site [id="why"] p,.comp-site [class*="process"] p,.comp-site [id="faq"] p{font-size:16px;line-height:1.68}
 .tic h3,.comp-site h3{font-size:clamp(18px,1.45vw,22px)}
 .tic summary,.comp-site summary{font-size:15px;line-height:1.45}
 .tic-contact,.tic-map,.comp-contact,.comp-map{font-size:15px}
 footer,.site-footer{font-size:14px;line-height:1.6}
}
@media(max-width:900px){.dna44-faq-split_editorial [id="faq"]>.wrap{grid-template-columns:1fr}.dna44-faq-split_editorial [id="faq"] h2{position:static}.dna44-faq-two_column [id="faq"] details{display:block;width:100%;margin-right:0}.dna44-lower-contact_map_split .tic-contact>.wrap,.dna44-lower-form_focus .tic-contact>.wrap,.dna44-lower-cta_contact .tic-contact>.wrap{grid-template-columns:1fr}}/* Phase 4.3.2C — FINAL component color lock.
   IMPORTANT: this block is intentionally appended LAST, after every design system.
   It uses fixed accessible foreground colors instead of inherited/brand text colors. */
.tic{--c-light-head:#111827;--c-light-body:#374151;--c-light-muted:#5b6675;--c-dark-head:#ffffff;--c-dark-body:#e5e7eb}

/* LIGHT COMPONENTS — explicit foregrounds */
.tic section[class$="-services"],.tic section[class$="-process"],.tic section[class$="-faq"],
.tic .tic-area,.tic .tic-contact,.tic .tic-map,
.tic1-services,.tic1-process,.tic1-faq,.tic2-hero,.tic2-manifesto,.tic2-services,.tic2-process,.tic2-faq,
.tic3-services,.tic3-process,.tic3-faq,.tic4-services,.tic4-process,.tic4-faq,
.tic6-hero,.tic6-story,.tic6-services,.tic6-process,.tic6-faq,
.tic7-hero,.tic7-photo,.tic7-services,.tic7-process,.tic7-faq,
.tic8-hero,.tic8-trust,.tic8-services,.tic8-process,.tic8-faq,
.tic9-hero,.tic9-intro,.tic9-services,.tic9-process,.tic9-faq,
.tic10-services,.tic10-process,.tic10-faq{color:var(--c-light-head)!important}

.tic section[class$="-services"] :is(h1,h2,h3,h4,h5,h6,b,strong,summary),
.tic section[class$="-process"] :is(h1,h2,h3,h4,h5,h6,b,strong,summary),
.tic section[class$="-faq"] :is(h1,h2,h3,h4,h5,h6,b,strong,summary),
.tic .tic-area :is(h1,h2,h3,h4,h5,h6,b,strong,summary),
.tic .tic-contact :is(h1,h2,h3,h4,h5,h6,b,strong,label,summary),
.tic .tic-map :is(h1,h2,h3,h4,h5,h6,b,strong,summary){color:var(--c-light-head)!important}
.tic section[class$="-services"] :is(p,li,small),.tic section[class$="-process"] :is(p,li,small),
.tic section[class$="-faq"] :is(p,li,small),.tic .tic-area :is(p,li,small),
.tic .tic-contact :is(p,li,small),.tic .tic-map :is(p,li,small){color:var(--c-light-body)!important}

/* Light Why components. */
.pit-template-2 .tic2-why,.pit-template-4 .tic4-why,.pit-template-6 .tic6-why,
.pit-template-7 .tic7-why,.pit-template-8 .tic8-why,.pit-template-9 .tic9-why{color:var(--c-light-head)!important}
.pit-template-2 .tic2-why :is(h1,h2,h3,h4,p,li,small),.pit-template-4 .tic4-why :is(h1,h2,h3,h4,p,li,small),
.pit-template-6 .tic6-why :is(h1,h2,h3,h4,p,li,small),.pit-template-7 .tic7-why :is(h1,h2,h3,h4,p,li,small),
.pit-template-8 .tic8-why :is(h1,h2,h3,h4,p,li,small),.pit-template-9 .tic9-why :is(h1,h2,h3,h4,p,li,small){color:var(--c-light-head)!important}

/* DARK COMPONENTS — explicit foregrounds. */
.tic1-hero,.tic1-why,.tic3-hero,.tic3-why,.tic10-why,.tic-cta,
.pit-template-5 .tic5,.pit-template-5 .tic5>section{color:var(--c-dark-head)!important}
.tic1-hero :is(h1,h2,h3,h4,b,strong),.tic1-why :is(h1,h2,h3,h4,b,strong),
.tic3-hero :is(h1,h2,h3,h4,b,strong),.tic3-why :is(h1,h2,h3,h4,b,strong),
.tic10-why :is(h1,h2,h3,h4,b,strong),.tic-cta :is(h1,h2,h3,h4,b,strong),
.pit-template-5 .tic5 :is(h1,h2,h3,h4,b,strong,summary){color:var(--c-dark-head)!important}
.tic1-hero :is(p,li,small),.tic1-why :is(p,li,small),.tic3-hero :is(p,li,small),
.tic3-why :is(p,li,small),.tic10-why :is(p,li,small),.tic-cta :is(p,li,small),
.pit-template-5 .tic5 :is(p,li,small){color:var(--c-dark-body)!important}

/* Dark benefit cards must stay light; previous 4.3.2B generic article rule could override these. */
.tic1-why article,.tic3-why article,.tic10-why article,.pit-template-5 .tic5 article{color:var(--c-dark-head)!important}
.tic1-why article :is(h3,p,span,b),.tic3-why article :is(h3,p,span,b),
.tic10-why article :is(h3,p,span,b),.pit-template-5 .tic5 article :is(h3,p,span,b){color:inherit!important}

/* Cards on light surfaces own their palette and do not inherit section text. */
.tic section[class$="-services"] article,.tic section[class$="-process"] article,
.tic section[class$="-faq"] details{color:var(--c-light-head)!important}
.tic section[class$="-services"] article :is(h3,b,strong),.tic section[class$="-process"] article :is(h3,b,strong),
.tic section[class$="-faq"] details summary{color:var(--c-light-head)!important}
.tic section[class$="-services"] article p,.tic section[class$="-process"] article p,
.tic section[class$="-faq"] details p{color:var(--c-light-body)!important}

/* Accent labels may use brand color ONLY on light surfaces. */
.tic section[class$="-services"] :is(.eyebrow,[class*="label"],[class*="num"]),
.tic section[class$="-process"] :is(.eyebrow,[class*="label"],[class*="num"]),
.tic section[class$="-faq"] .eyebrow,.tic .tic-area .eyebrow,.tic .tic-contact .eyebrow{color:var(--p)!important}
.tic1-hero .eyebrow,.tic1-why .eyebrow,.tic3-hero .eyebrow,.tic3-why .eyebrow,
.tic10-why .eyebrow,.tic-cta .eyebrow,.pit-template-5 .tic5 .eyebrow{color:var(--c-dark-head)!important}

/* Forms and buttons have self-contained contrast. */
.tic-contact .lead,.tic-contact input,.tic-contact textarea,.tic-contact select{background:#fff!important;color:#111827!important}
.tic-contact input::placeholder,.tic-contact textarea::placeholder{color:#64748b!important;opacity:1!important}
.tic .btn-light,.tic .btn-secondary{background:#fff!important;color:#111827!important;border-color:#cbd5e1!important}
.tic .btn-primary{color:#fff!important}
.tic-cta .btn-primary{background:#fff!important;color:var(--p)!important}

/* Never allow opacity to make primary copy effectively invisible. */
.tic :is(h1,h2,h3,h4,p,summary,label){opacity:1}/* Phase 4.3.2D — renderer-owned foreground architecture.
   AI/brand palettes may style accents and backgrounds, but never ordinary copy. */
.tic{--awb-fg:#111827;--awb-copy:#374151;--awb-muted:#5f6b7a;--awb-on-dark:#ffffff;--awb-copy-dark:#e5e7eb}

/* Every known LIGHT renderer component owns a dark foreground palette. */
.tic :where(
 .tic1-trust,.tic1-services,.tic1-process,.tic1-faq,
 .tic2-hero,.tic2-manifesto,.tic2-services,.tic2-why,.tic2-process,.tic2-faq,
 .tic3-services,.tic3-process,.tic3-faq,
 .tic4-hero,.tic4-services,.tic4-why,.tic4-process,.tic4-faq,
 .tic6-hero,.tic6-story,.tic6-services,.tic6-why,.tic6-process,.tic6-faq,
 .tic7-hero,.tic7-photo,.tic7-services,.tic7-why,.tic7-process,.tic7-faq,
 .tic8-hero,.tic8-trust,.tic8-services,.tic8-why,.tic8-process,.tic8-faq,
 .tic9-hero,.tic9-intro,.tic9-services,.tic9-why,.tic9-process,.tic9-faq,
 .tic10-hero,.tic10-services,.tic10-process,.tic10-faq,
 .tic-area,.tic-contact,.tic-map
){color:var(--awb-fg)!important}
.tic :where(
 .tic1-trust,.tic1-services,.tic1-process,.tic1-faq,
 .tic2-hero,.tic2-manifesto,.tic2-services,.tic2-why,.tic2-process,.tic2-faq,
 .tic3-services,.tic3-process,.tic3-faq,
 .tic4-hero,.tic4-services,.tic4-why,.tic4-process,.tic4-faq,
 .tic6-hero,.tic6-story,.tic6-services,.tic6-why,.tic6-process,.tic6-faq,
 .tic7-hero,.tic7-photo,.tic7-services,.tic7-why,.tic7-process,.tic7-faq,
 .tic8-hero,.tic8-trust,.tic8-services,.tic8-why,.tic8-process,.tic8-faq,
 .tic9-hero,.tic9-intro,.tic9-services,.tic9-why,.tic9-process,.tic9-faq,
 .tic10-hero,.tic10-services,.tic10-process,.tic10-faq,
 .tic-area,.tic-contact,.tic-map
) :is(h1,h2,h3,h4,h5,h6,strong,b,summary,label){color:var(--awb-fg)!important;opacity:1!important}
.tic :where(
 .tic1-trust,.tic1-services,.tic1-process,.tic1-faq,
 .tic2-hero,.tic2-manifesto,.tic2-services,.tic2-why,.tic2-process,.tic2-faq,
 .tic3-services,.tic3-process,.tic3-faq,
 .tic4-hero,.tic4-services,.tic4-why,.tic4-process,.tic4-faq,
 .tic6-hero,.tic6-story,.tic6-services,.tic6-why,.tic6-process,.tic6-faq,
 .tic7-hero,.tic7-photo,.tic7-services,.tic7-why,.tic7-process,.tic7-faq,
 .tic8-hero,.tic8-trust,.tic8-services,.tic8-why,.tic8-process,.tic8-faq,
 .tic9-hero,.tic9-intro,.tic9-services,.tic9-why,.tic9-process,.tic9-faq,
 .tic10-hero,.tic10-services,.tic10-process,.tic10-faq,
 .tic-area,.tic-contact,.tic-map
) :is(p,li,small){color:var(--awb-copy)!important;opacity:1!important}

/* Every known DARK renderer component owns a light foreground palette. */
.tic :where(.tic1-hero,.tic1-why,.tic3-hero,.tic3-why,.tic10-why,.tic5-hero,.tic5-trust,.tic5-services,.tic5-why,.tic5-process,.tic5-faq,.tic-cta){color:var(--awb-on-dark)!important}
.tic :where(.tic1-hero,.tic1-why,.tic3-hero,.tic3-why,.tic10-why,.tic5-hero,.tic5-trust,.tic5-services,.tic5-why,.tic5-process,.tic5-faq,.tic-cta) :is(h1,h2,h3,h4,h5,h6,strong,b,summary,label){color:var(--awb-on-dark)!important;opacity:1!important}
.tic :where(.tic1-hero,.tic1-why,.tic3-hero,.tic3-why,.tic10-why,.tic5-hero,.tic5-trust,.tic5-services,.tic5-why,.tic5-process,.tic5-faq,.tic-cta) :is(p,li,small){color:var(--awb-copy-dark)!important;opacity:1!important}

/* Shared light components stay light even inside template 5. */
.tic5 .tic-area,.tic5 .tic-contact,.tic5 .tic-map{background:#fff!important;color:var(--awb-fg)!important}
.tic5 :where(.tic-area,.tic-contact,.tic-map) :is(h1,h2,h3,h4,h5,h6,strong,b,summary,label){color:var(--awb-fg)!important}
.tic5 :where(.tic-area,.tic-contact,.tic-map) :is(p,li,small){color:var(--awb-copy)!important}

/* Accent labels are allowed brand color on light surfaces only. */
.tic :where(.tic1-trust,.tic1-services,.tic1-process,.tic1-faq,.tic2,.tic3-services,.tic3-process,.tic3-faq,.tic4,.tic6,.tic7,.tic8,.tic9,.tic10-hero,.tic10-services,.tic10-process,.tic10-faq,.tic-area,.tic-contact,.tic-map) .eyebrow{color:var(--p)!important}
.tic :where(.tic1-hero,.tic1-why,.tic3-hero,.tic3-why,.tic10-why,.tic5,.tic-cta) .eyebrow{color:var(--awb-on-dark)!important}

/* Cards/forms/buttons are isolated from parent foreground inheritance. */
.tic :where(.tic1-services,.tic2-services,.tic3-services,.tic4-services,.tic6-services,.tic7-services,.tic8-services,.tic9-services,.tic10-services) article{color:var(--awb-fg)!important}
.tic :where(.tic1-services,.tic2-services,.tic3-services,.tic4-services,.tic6-services,.tic7-services,.tic8-services,.tic9-services,.tic10-services) article :is(h1,h2,h3,h4,strong,b){color:var(--awb-fg)!important}
.tic :where(.tic1-services,.tic2-services,.tic3-services,.tic4-services,.tic6-services,.tic7-services,.tic8-services,.tic9-services,.tic10-services) article p{color:var(--awb-copy)!important}
.tic-contact .lead,.tic-contact input,.tic-contact textarea,.tic-contact select{background:#fff!important;color:#111827!important}
.tic-contact input::placeholder,.tic-contact textarea::placeholder{color:#64748b!important;opacity:1!important}
.tic .btn-light,.tic .btn-secondary{background:#fff!important;color:#111827!important;border-color:#cbd5e1!important}
.tic .btn-primary{color:#fff!important}
.tic-cta .btn-primary{background:#fff!important;color:var(--p)!important}/* Phase 4.3.2D2 — WHY US only: deterministic contrast lock.
   Keep every other section untouched. WHY US always owns a dark surface and light copy,
   so no generic article/card/design rule can create white-on-white or dark-on-dark text. */
.tic :is(.tic1-why,.tic2-why,.tic3-why,.tic4-why,.tic5-why,.tic6-why,.tic7-why,.tic8-why,.tic9-why,.tic10-why){
  background:#0b1220!important;
  color:#ffffff!important;
}
.tic :is(.tic1-why,.tic2-why,.tic3-why,.tic4-why,.tic5-why,.tic6-why,.tic7-why,.tic8-why,.tic9-why,.tic10-why) :is(h1,h2,h3,h4,h5,h6,strong,b,summary,label){
  color:#ffffff!important;
  opacity:1!important;
}
.tic :is(.tic1-why,.tic2-why,.tic3-why,.tic4-why,.tic5-why,.tic6-why,.tic7-why,.tic8-why,.tic9-why,.tic10-why) :is(p,li,small){
  color:#e5e7eb!important;
  opacity:1!important;
}
.tic :is(.tic1-why,.tic2-why,.tic3-why,.tic4-why,.tic5-why,.tic6-why,.tic7-why,.tic8-why,.tic9-why,.tic10-why) article,
.tic :is(.tic1-why,.tic2-why,.tic3-why,.tic4-why,.tic5-why,.tic6-why,.tic7-why,.tic8-why,.tic9-why,.tic10-why) [class*="benefit"]{
  background:transparent!important;
  color:#ffffff!important;
  border-color:rgba(255,255,255,.20)!important;
}
.tic :is(.tic1-why,.tic2-why,.tic3-why,.tic4-why,.tic5-why,.tic6-why,.tic7-why,.tic8-why,.tic9-why,.tic10-why) article :is(h1,h2,h3,h4,h5,h6,strong,b,span),
.tic :is(.tic1-why,.tic2-why,.tic3-why,.tic4-why,.tic5-why,.tic6-why,.tic7-why,.tic8-why,.tic9-why,.tic10-why) [class*="benefit"] :is(h1,h2,h3,h4,h5,h6,strong,b,span){
  color:#ffffff!important;
  opacity:1!important;
}
.tic :is(.tic1-why,.tic2-why,.tic3-why,.tic4-why,.tic5-why,.tic6-why,.tic7-why,.tic8-why,.tic9-why,.tic10-why) article p,
.tic :is(.tic1-why,.tic2-why,.tic3-why,.tic4-why,.tic5-why,.tic6-why,.tic7-why,.tic8-why,.tic9-why,.tic10-why) [class*="benefit"] p{
  color:#e5e7eb!important;
  opacity:1!important;
}
.tic :is(.tic1-why,.tic2-why,.tic3-why,.tic4-why,.tic5-why,.tic6-why,.tic7-why,.tic8-why,.tic9-why,.tic10-why) .eyebrow{
  color:#ffffff!important;
  opacity:1!important;
}/* Phase 4.5B1.1 — Built-in Template Section Contrast Safety.
   Named templates keep their layout identity, while light/dark section foregrounds
   are explicitly owned by the section instead of leaking from adjacent template DNA. */
.template-library{
  --tl-light-head:#111827;
  --tl-light-body:#374151;
  --tl-light-muted:#64748b;
  --tl-dark-head:#ffffff;
  --tl-dark-body:#e5e7eb;
}

/* Known light surfaces in built-in templates. */
.template-library :is(
  .services-section,.process-section,.faq-section,.contact-section,.map-section,
  .visual-band,.area,.tic-area,.tic-contact,.tic-map,
  section[class$="-services"],section[class$="-process"],section[class$="-faq"]
){
  color:var(--tl-light-head)!important;
  -webkit-text-fill-color:initial;
}
.template-library :is(
  .services-section,.process-section,.faq-section,.contact-section,.map-section,
  .visual-band,.area,.tic-area,.tic-contact,.tic-map,
  section[class$="-services"],section[class$="-process"],section[class$="-faq"]
) :is(h1,h2,h3,h4,h5,h6,b,strong,summary,label){
  color:var(--tl-light-head)!important;
  -webkit-text-fill-color:var(--tl-light-head)!important;
  opacity:1!important;
}
.template-library :is(
  .services-section,.process-section,.faq-section,.contact-section,.map-section,
  .visual-band,.area,.tic-area,.tic-contact,.tic-map,
  section[class$="-services"],section[class$="-process"],section[class$="-faq"]
) :is(p,li,small,address){
  color:var(--tl-light-body)!important;
  -webkit-text-fill-color:var(--tl-light-body)!important;
  opacity:1!important;
}

/* Self-contained white/light cards must never inherit white copy from a dark block. */
.template-library :is(.service-card,.step,.lead,.contact-card,.map-card,.faq details){
  color:var(--tl-light-head)!important;
}
.template-library :is(.service-card,.step,.lead,.contact-card,.map-card,.faq details) :is(h1,h2,h3,h4,h5,h6,b,strong,summary,label){
  color:var(--tl-light-head)!important;
  -webkit-text-fill-color:var(--tl-light-head)!important;
}
.template-library :is(.service-card,.step,.lead,.contact-card,.map-card,.faq details) :is(p,li,small,address){
  color:var(--tl-light-body)!important;
  -webkit-text-fill-color:var(--tl-light-body)!important;
}

/* Known dark surfaces keep explicit light copy. */
.template-library :is(.dark,.why-section,.tic-cta){
  color:var(--tl-dark-head)!important;
}
.template-library :is(.dark,.why-section,.tic-cta) :is(h1,h2,h3,h4,h5,h6,b,strong,summary,label){
  color:var(--tl-dark-head)!important;
  -webkit-text-fill-color:var(--tl-dark-head)!important;
  opacity:1!important;
}
.template-library :is(.dark,.why-section,.tic-cta) :is(p,li,small,address){
  color:var(--tl-dark-body)!important;
  -webkit-text-fill-color:var(--tl-dark-body)!important;
  opacity:1!important;
}

/* CTA uses its computed smart brand surface and therefore always owns white copy. */
.template-library .cta,
.template-library section.cta{
  color:#fff!important;
}
.template-library .cta :is(h1,h2,h3,h4,h5,h6,b,strong),
.template-library section.cta :is(h1,h2,h3,h4,h5,h6,b,strong){
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
.template-library .cta :is(p,li,small),
.template-library section.cta :is(p,li,small){
  color:#f8fafc!important;
  -webkit-text-fill-color:#f8fafc!important;
}

/* Accent labels are allowed to use the customer brand only on light surfaces. */
.template-library :is(
  .services-section,.process-section,.faq-section,.contact-section,.map-section,
  .visual-band,.area,.tic-area,.tic-contact,.tic-map
) .eyebrow{
  color:var(--p)!important;
  -webkit-text-fill-color:var(--p)!important;
}

/* Form controls and light buttons own their foreground regardless of section inheritance. */
.template-library :is(input,textarea,select,option){
  color:#111827!important;
  -webkit-text-fill-color:#111827!important;
}
.template-library :is(input,textarea)::placeholder{
  color:#64748b!important;
  -webkit-text-fill-color:#64748b!important;
  opacity:1!important;
}
.template-library .btn-light{
  background:#fff!important;
  color:#111827!important;
  -webkit-text-fill-color:#111827!important;
}/* Phase 4.3.2D3 — WHY US final ID-level contrast lock.
   The section ID is renderer-stable across every template and has higher specificity
   than template/card typography rules. This patch intentionally touches #why only. */
.tic section#why,
main.tic section#why{
  background:#0b1220!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}
.tic section#why *,
main.tic section#why *{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  opacity:1!important;
}
.tic section#why p,
.tic section#why li,
.tic section#why small,
main.tic section#why p,
main.tic section#why li,
main.tic section#why small{
  color:#e5e7eb!important;
  -webkit-text-fill-color:#e5e7eb!important;
}
.tic section#why article,
.tic section#why [class*="benefit"],
main.tic section#why article,
main.tic section#why [class*="benefit"]{
  background:transparent!important;
  border-color:rgba(255,255,255,.22)!important;
}
.tic section#why .eyebrow,
main.tic section#why .eyebrow{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}/* Phase 4.5B1.2: Sterling (template 07) only. Keep all other template families untouched. */
@media(min-width:901px){
 body.tl-template-7 .tic7>section:not(.tic-map){padding-top:56px;padding-bottom:56px}
 body.tl-template-7 .tic7 .tic7-hero{padding-top:60px;padding-bottom:38px}
 body.tl-template-7 .tic7 .tic7-photo{padding-top:20px!important;padding-bottom:30px}
 body.tl-template-7 .tic7 .tic7-photo img{height:clamp(320px,35vw,440px);object-fit:cover}
 body.tl-template-7 .tic7 .tic7-meta{margin-top:30px;gap:16px}
 body.tl-template-7 .tic7 .tic7-service{padding:19px 0;gap:22px;grid-template-columns:48px minmax(170px,.85fr) minmax(240px,1.3fr) 54px}
 body.tl-template-7 .tic7 .tic7-service h3{font-size:clamp(19px,2vw,25px);margin:0}
 body.tl-template-7 .tic7 .tic7-service p{margin:0}
 body.tl-template-7 .tic7 .tic-benefit-line{padding:18px 0;gap:22px}
 body.tl-template-7 .tic7 .tic7-process .tic-process-line{padding:18px 0}
 body.tl-template-7 .tic7 .tic7-faq .tic-faq-row{padding:17px 0;gap:22px}
 body.tl-template-7 .tic7 .tic-area-media{height:310px}
 body.tl-template-7 .tic7 .tic-area>.wrap{gap:36px}
 body.tl-template-7 .tic7 .tic-contact>.wrap{gap:36px}
}
@media(max-width:900px){
 body.tl-template-7 .tic7>section:not(.tic-map){padding-top:46px;padding-bottom:46px}
 body.tl-template-7 .tic7 .tic7-meta{margin-top:24px;gap:10px}
 body.tl-template-7 .tic7 .tic7-photo img{height:clamp(230px,55vw,380px);object-fit:cover}
 body.tl-template-7 .tic7 .tic7-service{padding:17px 0;gap:14px}
 body.tl-template-7 .tic7 .tic-benefit-line,body.tl-template-7 .tic7 .tic7-process .tic-process-line{padding:18px 0}
 body.tl-template-7 .tic7 .tic-faq-row{padding:17px 0}
}
@media(max-width:620px){
 body.tl-template-7 .tic7>section:not(.tic-map){padding-top:36px;padding-bottom:36px}
 body.tl-template-7 .tic7 .tic7-service{grid-template-columns:38px minmax(0,1fr);gap:9px 14px}
 body.tl-template-7 .tic7 .tic7-service :is(p,a){grid-column:2}
 body.tl-template-7 .tic7 .tic-benefit-line{grid-template-columns:1fr;gap:8px}
 body.tl-template-7 .tic7 .tic7-process .tic-process-line{grid-template-columns:46px minmax(0,1fr)}
}\n/* Phase 3.11C8 conversion header/footer + mobile sticky call bar */\n.cdh nav a,.cd-header nav a{font-size:15.5px!important;line-height:1.4!important}.cdh .brand-name,.cd-header .brand-name{font-size:18px!important;line-height:1.2!important}.cdh .brand-name small,.cd-header .brand-name small,.cdh .logo small,.cd-header .logo small{font-size:12.5px!important;line-height:1.4!important}.cdh .btn,.cd-header .btn,.cdh .cdh-action,.cd-header .cdh-action{font-size:15px!important}.cdh-2 .cdh-strip,.cdh-5 .cdh-meta small,.cdh-6 .cdh-rule-row span{font-size:11.5px!important}.cd-footer small{font-size:12px!important;line-height:1.5!important}.cd-footer p,.cd-footer a,.cd-footer .cd-foot-brand p{font-size:15.5px!important;line-height:1.65!important}.cd-footer .cd-foot-brand .brand-name{font-size:16.5px!important;line-height:1.3!important}.cd-footer .cd-foot-brand .brand-name small{font-size:12.5px!important;line-height:1.4!important}.cd-footer .cd-foot-base{font-size:14px!important;line-height:1.5!important}.premium-footer .footer-brand p{font-size:16px!important;line-height:1.75!important}.premium-footer .footer-col b{font-size:15px!important}.premium-footer .footer-col a,.premium-footer .footer-col span,.premium-footer .footer-mini-links a{font-size:16px!important;line-height:1.6!important}.premium-footer .footer-bottom{font-size:14px!important;line-height:1.5!important}.premium-footer .footer-area span{font-size:13px!important}.awb-mobile-callbar{display:none}@media(max-width:900px){body.awb-has-mobile-callbar{padding-bottom:74px!important}.awb-mobile-callbar{position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:10050!important;display:flex!important;align-items:center!important;justify-content:center!important;min-height:64px!important;padding:9px 14px calc(9px + env(safe-area-inset-bottom))!important;background:var(--p,#0f766e)!important;box-shadow:0 -8px 24px rgba(15,23,42,.18)!important;border-top:1px solid rgba(255,255,255,.22)!important}.awb-mobile-callbar a{display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;width:min(100%,560px)!important;min-height:46px!important;padding:10px 16px!important;border-radius:12px!important;background:rgba(255,255,255,.13)!important;color:#fff!important;text-decoration:none!important;font-size:18px!important;font-weight:900!important;line-height:1.2!important;letter-spacing:.01em!important}.awb-mobile-callbar .awb-call-icon{font-size:20px!important;line-height:1!important}.cdh nav a,.cd-header nav a{font-size:15.5px!important}.cd-footer p,.cd-footer a{font-size:15.5px!important}.premium-footer .footer-col a,.premium-footer .footer-col span{font-size:16px!important}}/* Phase 4.13B: completely isolated styling; existing template selectors untouched. */
.awb413b-testimonials{--awb413b-accent:var(--p,#245b79);position:relative;isolation:isolate;padding:clamp(46px,6vw,84px) 18px;background:#f6f8fb!important;color:#1b2938!important;font-family:inherit!important;box-sizing:border-box}
.awb413b-testimonials *{box-sizing:border-box}
.awb413b-shell{width:min(1160px,100%);margin:0 auto}
.awb413b-heading{text-align:center;margin:0 auto 30px;max-width:780px}
.awb413b-kicker{display:block;font-size:12px!important;font-weight:750!important;letter-spacing:.14em!important;color:#365977!important;margin-bottom:10px}
.awb413b-heading h2{font-family:inherit!important;font-size:clamp(27px,3vw,40px)!important;line-height:1.2!important;color:#142537!important;margin:0 0 12px!important}
.awb413b-warning{font-size:14px!important;line-height:1.6!important;color:#45586d!important;margin:0 auto!important}
.awb413b-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
.awb413b-card[hidden]{display:none!important}
.awb413b-more{display:block;margin:24px auto 0;padding:12px 24px;border:1px solid #b5c5d3;border-radius:9px;background:#fff;color:#1b2938;font:inherit;font-size:15px;font-weight:700;cursor:pointer}
.awb413b-more:hover{background:#e9f0f6}
.awb413b-card{display:flex;flex-direction:column;min-width:0;padding:clamp(20px,2.4vw,30px)!important;background:#fff!important;color:#243246!important;border:1px solid #dce4ed!important;border-radius:16px!important;box-shadow:0 8px 24px rgba(17,37,58,.06)!important;text-align:left!important}
.awb413b-card blockquote{flex:1;margin:0 0 20px!important;padding:0!important;border:0!important;color:#26384b!important;font-size:16px!important;line-height:1.7!important;font-weight:400!important;overflow-wrap:anywhere}
.awb413b-byline{display:flex;flex-direction:column;gap:4px;margin-top:auto}
.awb413b-byline strong{font-size:15px!important;color:#152b3e!important;line-height:1.35!important}
.awb413b-byline span{font-size:13px!important;color:#56687b!important;line-height:1.5!important}
.awb413b-review-date{display:block;font-size:12px!important;line-height:1.5!important;color:#617186!important;margin-top:4px!important}
.awb413b-stars{color:#d99a13!important;-webkit-text-fill-color:#d99a13!important;letter-spacing:3px;font-size:20px!important;line-height:1.3!important;margin-bottom:12px;font-weight:700!important}
.awb413b-demo{display:none!important}
@media(max-width:850px){.awb413b-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.awb413b-testimonials{padding:42px 16px}.awb413b-grid{grid-template-columns:minmax(0,1fr);gap:14px}.awb413b-card{padding:22px!important}}/* 100 distinct curated header/footer palettes. No body-section styling. */
body.pit-template-1 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-1 > footer.cd-footer{background:#182C3C!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-2 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-2 > footer.cd-footer{background:#4E1D2A!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-3 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-3 > footer.cd-footer{background:#174419!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-4 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-4 > footer.cd-footer{background:#2F1B57!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-5 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-5 > footer.cd-footer{background:#4E3816!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-6 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-6 > footer.cd-footer{background:#11433F!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-7 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-7 > footer.cd-footer{background:#4C1F43!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-8 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-8 > footer.cd-footer{background:#2E4319!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-9 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-9 > footer.cd-footer{background:#1D2955!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-10 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-10 > footer.cd-footer{background:#4C1C18!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-11 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-11 > footer.cd-footer{background:#134224!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-12 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-12 > footer.cd-footer{background:#401655!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-13 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-13 > footer.cd-footer{background:#413F1B!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-14 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-14 > footer.cd-footer{background:#1F4753!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-15 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-15 > footer.cd-footer{background:#4A1930!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-16 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-16 > footer.cd-footer{background:#1C4014!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-17 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-17 > footer.cd-footer{background:#1F1854!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-18 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-18 > footer.cd-footer{background:#492913!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-19 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-19 > footer.cd-footer{background:#215143!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-20 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-20 > footer.cd-footer{background:#481B48!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-21 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-21 > footer.cd-footer{background:#333F15!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-22 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-22 > footer.cd-footer{background:#193152!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-23 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-23 > footer.cd-footer{background:#48141B!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-24 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-24 > footer.cd-footer{background:#175C22!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-25 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-25 > footer.cd-footer{background:#301D47!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-26 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-26 > footer.cd-footer{background:#3D3317!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-27 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-27 > footer.cd-footer{background:#1B4E50!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-28 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-28 > footer.cd-footer{background:#461636!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-29 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-29 > footer.cd-footer{background:#325A19!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-30 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-30 > footer.cd-footer{background:#14194F!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-31 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-31 > footer.cd-footer{background:#3C2018!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-32 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-32 > footer.cd-footer{background:#1D4E35!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-33 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-33 > footer.cd-footer{background:#3B1744!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-34 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-34 > footer.cd-footer{background:#53571B!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-35 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-35 > footer.cd-footer{background:#16394E!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-36 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-36 > footer.cd-footer{background:#431122!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-37 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-37 > footer.cd-footer{background:#214C1F!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-38 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-38 > footer.cd-footer{background:#231943!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-39 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-39 > footer.cd-footer{background:#553C1D!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-40 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-40 > footer.cd-footer{background:#184C43!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-41 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-41 > footer.cd-footer{background:#42133C!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-42 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-42 > footer.cd-footer{background:#3B5516!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-43 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-43 > footer.cd-footer{background:#1B2641!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-44 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-44 > footer.cd-footer{background:#531F1F!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-45 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-45 > footer.cd-footer{background:#194A27!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-46 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-46 > footer.cd-footer{background:#2E1440!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-47 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-47 > footer.cd-footer{background:#544C18!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-48 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-48 > footer.cd-footer{background:#134049!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-49 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-49 > footer.cd-footer{background:#51213B!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-50 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-50 > footer.cd-footer{background:#26481B!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-51 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-51 > footer.cd-footer{background:#17153F!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-52 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-52 > footer.cd-footer{background:#522C19!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-53 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-53 > footer.cd-footer{background:#144834!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-54 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-54 > footer.cd-footer{background:#56175C!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-55 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-55 > footer.cd-footer{background:#3E471D!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-56 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-56 > footer.cd-footer{background:#172A3D!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-57 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-57 > footer.cd-footer{background:#501B26!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-58 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-58 > footer.cd-footer{background:#16461A!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-59 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-59 > footer.cd-footer{background:#31195A!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-60 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-60 > footer.cd-footer{background:#4F3C14!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-61 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-61 > footer.cd-footer{background:#183C3A!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-62 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-62 > footer.cd-footer{background:#4E1D42!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-63 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-63 > footer.cd-footer{background:#2C4417!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-64 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-64 > footer.cd-footer{background:#1B2557!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-65 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-65 > footer.cd-footer{background:#4E1D16!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-66 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-66 > footer.cd-footer{background:#114326!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-67 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-67 > footer.cd-footer{background:#3F1F4C!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-68 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-68 > footer.cd-footer{background:#434319!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-69 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-69 > footer.cd-footer{background:#1D4555!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-70 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-70 > footer.cd-footer{background:#4C182D!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-71 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-71 > footer.cd-footer{background:#184213!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-72 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-72 > footer.cd-footer{background:#201655!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-73 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-73 > footer.cd-footer{background:#412C1B!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-74 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-74 > footer.cd-footer{background:#1F5347!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-75 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-75 > footer.cd-footer{background:#4A1948!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-76 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-76 > footer.cd-footer{background:#314014!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-77 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-77 > footer.cd-footer{background:#182E54!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-78 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-78 > footer.cd-footer{background:#491317!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-79 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-79 > footer.cd-footer{background:#21512B!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-80 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-80 > footer.cd-footer{background:#321B48!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-81 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-81 > footer.cd-footer{background:#3F3615!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-82 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-82 > footer.cd-footer{background:#194D52!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-83 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-83 > footer.cd-footer{background:#481434!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-84 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-84 > footer.cd-footer{background:#2E5C17!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-85 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-85 > footer.cd-footer{background:#1D1E47!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-86 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-86 > footer.cd-footer{background:#3D2117!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-87 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-87 > footer.cd-footer{background:#1B5038!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-88 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-88 > footer.cd-footer{background:#3E1646!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-89 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-89 > footer.cd-footer{background:#515A19!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-90 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-90 > footer.cd-footer{background:#14364F!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-91 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-91 > footer.cd-footer{background:#3C1823!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-92 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-92 > footer.cd-footer{background:#1D4E1D!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-93 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-93 > footer.cd-footer{background:#251744!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-94 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-94 > footer.cd-footer{background:#573F1B!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-95 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-95 > footer.cd-footer{background:#164E47!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-96 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-96 > footer.cd-footer{background:#43113B!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-97 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-97 > footer.cd-footer{background:#374C1F!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-98 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-98 > footer.cd-footer{background:#192343!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-99 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-99 > footer.cd-footer{background:#55201D!important;color:#fff!important;border-color:#ffffff2b!important}
body.pit-template-100 > header.cdh{background:#fff!important;color:#172b3a!important;border-color:#e2e8f0!important}
body.pit-template-100 > footer.cd-footer{background:#184C29!important;color:#fff!important;border-color:#ffffff2b!important}
body[class*="pit-template-"] > header.cdh :is(.logo,.brand-name,nav a,.cdh-rule-row span,.cdh-meta b,.cdh-meta small,.menu){color:#172b3a!important}
body[class*="pit-template-"] > header.cdh :is(.logo small,.brand-name small){color:#475569!important}
body[class*="pit-template-"] > header.cdh .cdh-strip{background:#f1f5f9!important;color:#172b3a!important}
body[class*="pit-template-"] > header.cdh .cdh-rule-row{border-color:#e2e8f0!important}
body[class*="pit-template-"] > header.cdh .cdh-meta{border-color:#e2e8f0!important}
body[class*="pit-template-"] > header.cdh .menu{background:transparent!important}
body[class*="pit-template-"] > footer.cd-footer :is(h2,h3,h4,b,strong,.logo,.brand-name,.cd-foot-brand,.cd-foot-grid a,.cd-foot-base a){color:#fff!important}
body[class*="pit-template-"] > footer.cd-footer :is(p,small,span,.brand-name small,.cd-foot-base){color:#e0e8f1!important}
body[class*="pit-template-"] > footer.cd-footer .cd-foot-base{border-color:#ffffff33!important}
/* Normalize white header readability without altering CTA fills or logos. */
body[class*="pit-template-"] > header.cdh :is(.cdh-strip,.cdh-rule-row,.cdh-meta) :is(a,span,small,b,strong){color:#172b3a!important}
body[class*="pit-template-"] > header.cdh .cdh-mobile-nav{background:#fff!important}
body[class*="pit-template-"] > header.cdh .cdh-mobile-nav a:not(.btn){color:#172b3a!important}
body[class*="pit-template-"] > header.cdh .cdh-action a,body[class*="pit-template-"] > header.cdh a.btn{color:#fff!important}
/* All footers and non-header sections unchanged. *//* Logo clarity: header only, no footer/body palette changes. */
.site-header .logo-mark,.site-header .logo-image{width:64px!important;height:64px!important;min-width:64px!important;flex:0 0 64px!important;border-radius:12px!important;overflow:hidden!important}
.site-header .logo-image img{width:100%!important;height:100%!important;object-fit:contain!important;display:block!important}
.site-header .logo{gap:13px!important;max-width:min(440px,55vw);min-width:0}
.site-header .logo>span:last-child{min-width:0;overflow-wrap:anywhere;font-size:clamp(17px,1.5vw,22px)!important;line-height:1.2!important;font-weight:800!important}
.site-header .logo small{font-size:11px!important;line-height:1.4!important}
@media(max-width:700px){.site-header .logo-mark,.site-header .logo-image{width:52px!important;height:52px!important;min-width:52px!important;flex-basis:52px!important}.site-header .logo{gap:9px!important;max-width:calc(100vw - 105px)}.site-header .logo>span:last-child{font-size:16px!important}.site-header .logo small{font-size:10px!important}}/* Phase 4.13E-03: wide, bright brand marks, only on auto-generated lettermarks. */
.site-header .logo-mark.awb413e-lettermark,.cdh .logo-mark.awb413e-lettermark,.cd-header .logo-mark.awb413e-lettermark{width:250px!important;height:100px!important;min-width:250px!important;flex:0 0 250px!important;padding:0!important;border:0!important;border-radius:17px!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;display:flex!important;align-items:center!important;justify-content:center!important}
.awb413e-lettermark svg{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important}
.site-header .logo:has(.awb413e-lettermark){max-width:min(690px,68vw)!important;gap:14px!important}
@media(max-width:900px){.site-header .logo-mark.awb413e-lettermark,.cdh .logo-mark.awb413e-lettermark,.cd-header .logo-mark.awb413e-lettermark{width:190px!important;height:76px!important;min-width:190px!important;flex-basis:190px!important}.site-header .logo:has(.awb413e-lettermark){max-width:calc(100vw - 72px)!important}}
@media(max-width:600px){.site-header .logo-mark.awb413e-lettermark,.cdh .logo-mark.awb413e-lettermark,.cd-header .logo-mark.awb413e-lettermark{width:150px!important;height:60px!important;min-width:150px!important;flex-basis:150px!important}.site-header .logo:has(.awb413e-lettermark){gap:8px!important;max-width:calc(100vw - 52px)!important}.site-header .logo:has(.awb413e-lettermark)>span:last-child{font-size:12px!important;line-height:1.18!important}.site-header .logo:has(.awb413e-lettermark) small{font-size:9px!important}}

/* Phase 4.13E-04A: use saved generated AI logo, not generic SVG. */
.site-header .logo-mark.awb413e-ai-logo{width:250px!important;height:100px!important;min-width:250px!important;flex:0 0 250px!important;overflow:hidden!important;border:0!important;border-radius:8px!important;background:transparent!important;box-shadow:none!important}
.site-header .logo-mark.awb413e-ai-logo img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important}
.site-header .logo:has(.awb413e-ai-logo){max-width:min(690px,68vw)!important;gap:14px!important}
@media(max-width:900px){.site-header .logo-mark.awb413e-ai-logo{width:190px!important;height:76px!important;min-width:190px!important;flex-basis:190px!important}}
@media(max-width:600px){.site-header .logo-mark.awb413e-ai-logo{width:150px!important;height:60px!important;min-width:150px!important;flex-basis:150px!important}.site-header .logo:has(.awb413e-ai-logo){max-width:calc(100vw - 52px)!important;gap:8px!important}.site-header .logo:has(.awb413e-ai-logo)>span:last-child{font-size:12px!important}.site-header .logo:has(.awb413e-ai-logo) small{font-size:9px!important}}

/* 4.13E-04B: prevent earlier 64px image rule overriding the logo artwork. */
.site-header .logo-mark.awb413e-ai-logo,.cdh .logo-mark.awb413e-ai-logo,.cd-header .logo-mark.awb413e-ai-logo{width:clamp(180px,18vw,250px)!important;height:100px!important;min-width:0!important;flex:0 1 250px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important}
.site-header .logo-mark.awb413e-ai-logo img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important}
.site-header .logo:has(.awb413e-ai-logo){max-width:min(760px,75vw)!important;min-width:0!important;align-items:center!important}
.site-header .logo .awb413e-logo-words{display:block;min-width:0;overflow-wrap:normal;word-break:normal;hyphens:auto;line-height:1.15!important;font-size:clamp(14px,1.25vw,20px)!important}
.site-header .logo .awb413e-logo-words small{font-size:clamp(10px,.8vw,12px)!important;line-height:1.3!important}
@media(max-width:900px){.site-header .logo-mark.awb413e-ai-logo{width:190px!important;height:76px!important;flex-basis:190px!important}.site-header .logo:has(.awb413e-ai-logo){max-width:calc(100vw - 75px)!important}}
@media(max-width:600px){.site-header .logo-mark.awb413e-ai-logo{width:min(48vw,175px)!important;height:68px!important;flex-basis:min(48vw,175px)!important}.site-header .logo:has(.awb413e-ai-logo){max-width:calc(100vw - 68px)!important;gap:8px!important}.site-header .logo .awb413e-logo-words{font-size:clamp(12px,3.1vw,15px)!important}.site-header .logo .awb413e-logo-words small{display:none!important}}/* Phase 4.13E-05: integrated, transparent brand identity, scoped to generated logos. */
.site-header .logo:has(.awb-brand-identity),.cdh .logo:has(.awb-brand-identity),.cd-header .logo:has(.awb-brand-identity),footer .logo:has(.awb-brand-identity){display:inline-flex!important;align-items:center!important;min-width:0!important;max-width:min(540px,62vw)!important;gap:0!important;text-decoration:none!important}
.logo .awb-brand-identity{display:flex;align-items:center;gap:9px;width:min(440px,100%);min-width:0;max-width:100%;background:transparent!important;border:0!important;box-shadow:none!important;color:inherit!important;line-height:1.05!important}
.logo .awb-brand-symbol{display:block;flex:0 0 90px;width:90px;height:92px;min-width:0;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important}
.logo .awb-brand-symbol svg{display:block;width:100%;height:100%;overflow:visible}
.logo .awb-brand-type{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;max-width:330px;gap:5px;line-height:1.06!important}
.logo .awb-brand-name{display:block!important;max-width:100%;font-family:ui-sans-serif,system-ui,-apple-system,'Segoe UI',Arial,sans-serif!important;font-size:clamp(22px,2.1vw,33px)!important;font-weight:900!important;letter-spacing:-.055em!important;line-height:1.04!important;overflow-wrap:break-word;word-break:normal;text-wrap:balance;color:inherit!important;text-shadow:none!important}
.logo .awb-brand-service{display:inline-block!important;max-width:100%;padding:5px 10px!important;border-radius:999px!important;background:#087F83!important;color:#FFFFFF!important;font-family:ui-sans-serif,system-ui,Arial,sans-serif!important;font-size:clamp(10px,.85vw,13px)!important;font-weight:800!important;letter-spacing:.045em!important;text-transform:uppercase!important;line-height:1.25!important;white-space:normal!important;text-align:left!important}
@media(max-width:900px){.site-header .logo:has(.awb-brand-identity){max-width:calc(100vw - 110px)!important}.logo .awb-brand-symbol{flex-basis:66px;width:66px;height:70px}.logo .awb-brand-name{font-size:clamp(18px,3.3vw,25px)!important}.logo .awb-brand-service{font-size:10px!important;padding:4px 8px!important}}
@media(max-width:600px){.site-header .logo:has(.awb-brand-identity){max-width:calc(100vw - 82px)!important}.logo .awb-brand-identity{gap:5px}.logo .awb-brand-symbol{flex-basis:49px;width:49px;height:54px}.logo .awb-brand-type{gap:4px}.logo .awb-brand-name{font-size:clamp(15px,4vw,20px)!important;letter-spacing:-.04em!important}.logo .awb-brand-service{font-size:9px!important;padding:3px 6px!important;letter-spacing:0!important}}/* Applies only to uploaded/Logo Studio image logos, not other brand treatments. */
header .logo.awb-studio-logo,
header a.logo.awb-studio-logo,
.site-header a.logo.awb-studio-logo,
.cdh a.logo.awb-studio-logo,
.cd-header a.logo.awb-studio-logo {
  display:flex!important;
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
  align-self:flex-end!important;
  flex:0 1 255px!important;
  width:255px!important;
  max-width:255px!important;
  min-width:0!important;
  height:76px!important;
  min-height:0!important;
  max-height:76px!important;
  padding:0!important;
  margin-top:0!important;
  margin-bottom:0!important;
  overflow:hidden!important;
  line-height:1!important;
  box-sizing:border-box!important;
}
header .logo.awb-studio-logo > img.awb-studio-logo-img,
.site-header .logo.awb-studio-logo > img.awb-studio-logo-img,
.cdh .logo.awb-studio-logo > img.awb-studio-logo-img,
.cd-header .logo.awb-studio-logo > img.awb-studio-logo-img {
  display:block!important;
  position:static!important;
  transform:none!important;
  flex:0 1 auto!important;
  width:100%!important;
  max-width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:left bottom!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
}
@media(max-width:900px){
  header a.logo.awb-studio-logo,.site-header a.logo.awb-studio-logo,
  .cdh a.logo.awb-studio-logo,.cd-header a.logo.awb-studio-logo {
    flex-basis:205px!important;width:205px!important;max-width:205px!important;
    height:64px!important;max-height:64px!important;
  }
}
@media(max-width:600px){
  header a.logo.awb-studio-logo,.site-header a.logo.awb-studio-logo,
  .cdh a.logo.awb-studio-logo,.cd-header a.logo.awb-studio-logo {
    flex-basis:min(48vw,175px)!important;width:min(48vw,175px)!important;
    max-width:min(48vw,175px)!important;height:56px!important;max-height:56px!important;
  }
}