/*
Theme Name: Comtask — Elementor
Description: Approved Comtask advisory homepage, editable Elementor content, locally bundled Sora and final ARS² artwork.
Author: Comtask LLC
Template: hello-elementor
Version: 1.0.2
Requires at least: 6.5
Requires PHP: 8.0
Text Domain: comtask-elementor
*/

/* Isolate the approved design from Elementor global colors and widget spacing. */
#ct-site{display:block;width:100%;max-width:none;padding:0;margin:0;gap:0;font-family:Sora,Arial,sans-serif;color:#182c3a;background:#f7f6f2}
#ct-site .ct-node{display:block;--container-default-padding-top:0;--container-default-padding-right:0;--container-default-padding-bottom:0;--container-default-padding-left:0;--kit-widget-spacing:0;padding:0;gap:0;min-width:0;margin:0;border-radius:0;max-width:none;flex:none}
#ct-site .ct-native,#ct-site .ct-native>.elementor-widget-container{display:contents;font-family:inherit;color:inherit;font-size:inherit;line-height:inherit}
#ct-site .elementor-heading-title{font-family:Sora,Arial,sans-serif;color:inherit}
#ct-site a,#ct-site a:visited{color:inherit}
#ct-site a.button,#ct-site a.button:visited{color:white}
#ct-site a:focus-visible{outline:2px solid #b39a63;outline-offset:4px}
@font-face{font-family:Sora;src:url('assets/sora-variable.ttf') format('truetype');font-weight:100 800;font-style:normal;font-display:swap}
:root{--ink:#182c3a;--muted:#59676f;--gold:#b39a63;--paper:#f7f6f2;--line:#dce1dc}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Sora,Arial,sans-serif;line-height:1.65}
#ct-site a{color:inherit}
#ct-site header{max-width:1240px;margin:auto;padding:26px 40px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
#ct-site .wordmark{font-size:25px;font-weight:600;text-decoration:none;letter-spacing:-1px}
#ct-site .wordmark span{color:var(--gold)}
#ct-site nav{display:flex;gap:30px;font-size:12px}
#ct-site nav a{text-decoration:none}
#ct-site .wrap{max-width:1240px;margin:auto;padding:0 40px}
#ct-site .hero{padding:96px 0 78px;display:grid;grid-template-columns:1.65fr 1fr;gap:80px}
#ct-site .eyebrow{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:2.2px;color:var(--muted);margin:0 0 20px}
#ct-site h1{font-size:clamp(45px,6vw,76px);line-height:1.08;letter-spacing:-3.5px;margin:0 0 23px;font-weight:500}
#ct-site h2{font-size:clamp(28px,3vw,42px);line-height:1.25;letter-spacing:-1.5px;font-weight:500;margin:0 0 24px}
#ct-site h3{font-size:20px;line-height:1.4;font-weight:500;margin:0 0 12px}
#ct-site p{margin:0 0 20px}
#ct-site .role{font-size:20px;line-height:1.5;max-width:620px}
#ct-site .intro{color:var(--muted);max-width:640px;font-size:15px}
#ct-site .button{display:inline-block;background:var(--ink);color:white;padding:14px 24px;text-decoration:none;font-size:12px;border-radius:3px;margin-top:12px}
#ct-site .hero-aside{padding-top:50px}
#ct-site .statement{border-left:2px solid var(--gold);padding:8px 0 8px 27px;font-size:25px;line-height:1.5;letter-spacing:-.6px}
#ct-site .aside-note{font-size:12px;color:var(--muted);padding:24px 0 0 29px}
#ct-site .audience{display:flex;gap:35px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;font-size:12px}
#ct-site .audience span:first-child{color:var(--muted)}
#ct-site .section{padding:76px 0;border-bottom:1px solid var(--line)}
#ct-site .services{display:grid;grid-template-columns:1fr 2fr;gap:80px}
#ct-site .service{display:grid;grid-template-columns:40px 1fr;border-bottom:1px solid var(--line);padding:0 0 23px;margin-bottom:25px}
#ct-site .service:last-child{border:0;margin:0;padding:0}
#ct-site .number{font-size:11px;color:var(--gold);padding-top:5px}
#ct-site .service p{font-size:14px;color:var(--muted);margin:0}
#ct-site .ecosystem-intro{max-width:690px;color:var(--muted);font-size:14px}
#ct-site .destinations{margin-top:40px;display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
#ct-site .destination{background:white;padding:30px;display:flex;flex-direction:column;min-height:310px;border:1px solid var(--line)}
#ct-site .destination p{font-size:13px;color:var(--muted)}
#ct-site .destination a,#ct-site .soon{font-size:12px;margin-top:auto;padding-top:18px;text-decoration:none}
#ct-site .destination a:hover{text-decoration:underline}
#ct-site .ars{font-size:31px;font-weight:700;line-height:1.1;margin-bottom:6px}
#ct-site .ars sup{color:var(--gold);font-size:20px}
#ct-site .framework{font-size:8px;letter-spacing:3px;color:#849099;margin-bottom:9px}
#ct-site .bar{display:flex;width:115px;height:4px;margin-bottom:23px}
#ct-site .bar i{flex:1}
#ct-site .bar i:nth-child(1){background:#47956e}
#ct-site .bar i:nth-child(2){background:#d58d43}
#ct-site .bar i:nth-child(3){background:#d5b459}
#ct-site .bar i:nth-child(4){background:#c65e53}
#ct-site .soon{color:var(--muted)}
#ct-site .experience{display:grid;grid-template-columns:1fr 2fr;gap:80px}
#ct-site .experience p{font-size:15px;color:var(--muted)}
#ct-site .experience-line{font-size:11px;letter-spacing:.7px;color:var(--ink);border-top:1px solid var(--line);padding-top:22px}
#ct-site .contact{padding:75px 0 85px;display:flex;justify-content:space-between;align-items:center;gap:40px}
#ct-site .contact p{color:var(--muted);font-size:14px;max-width:650px}
#ct-site footer{background:var(--ink);color:#e6e8e4;padding:30px 0;font-size:11px}
#ct-site .foot{display:flex;justify-content:space-between;gap:25px}
#ct-site footer a{text-decoration:none}
#ct-site .draft{background:#eeeae0;padding:8px;text-align:center;font-size:10px;color:#656457}
#ct-site a:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
@media(max-width:800px){#ct-site header{padding:22px}
#ct-site nav{gap:17px}
#ct-site .wrap{padding:0 23px}
#ct-site .hero{grid-template-columns:1fr;gap:20px;padding:60px 0 45px}
#ct-site .hero-aside{padding:0}
#ct-site .statement{font-size:22px}
#ct-site .audience{flex-wrap:wrap;gap:12px 23px}
#ct-site .services,#ct-site .experience{grid-template-columns:1fr;gap:26px}
#ct-site .destinations{grid-template-columns:1fr}
#ct-site .destination{min-height:240px}
#ct-site .section{padding:50px 0}
#ct-site .contact{display:block;padding:50px 0}
#ct-site .foot{flex-direction:column}
#ct-site h1{letter-spacing:-2px}
#ct-site nav a:first-child{display:none}}
#ct-site .skip{position:absolute;top:-100px;left:12px;padding:10px;background:white;z-index:10}
#ct-site .skip:focus{top:10px}
#ct-site .wordmark{font-weight:700;display:inline-block;padding-bottom:7px;border-bottom:1px solid var(--gold)}
#ct-site .text-link{font-size:13px;text-underline-offset:5px}
#ct-site .readiness{display:grid;grid-template-columns:1fr 1.2fr;gap:70px}
#ct-site .kpis{display:grid;grid-template-columns:1fr 1fr;gap:19px 25px;margin:28px 0}
#ct-site .kpis span{border-left:3px solid;padding-left:12px;font-size:20px;font-weight:500}
#ct-site .kpis span:nth-child(1){border-color:#47956e}
#ct-site .kpis span:nth-child(2){border-color:#d58d43}
#ct-site .kpis span:nth-child(3){border-color:#d5b459}
#ct-site .kpis span:nth-child(4){border-color:#c65e53}
#ct-site .trust{font-size:12px;color:var(--muted)}
#ct-site .destination{min-height:325px}
#ct-site .family{display:flex;gap:26px;font-size:11px;margin-top:25px;padding-top:23px;border-top:1px solid #ffffff30;flex-wrap:wrap}
html{scroll-padding-top:25px}
@media(max-width:800px){#ct-site .readiness{grid-template-columns:1fr;gap:20px}
#ct-site .kpis span{font-size:17px}
#ct-site .role{font-size:18px}
#ct-site .statement{font-size:25px}
#ct-site .hero-aside{margin-top:10px}
#ct-site header{gap:15px}
#ct-site nav{font-size:11px;gap:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
#ct-site .ars2-logo{display:block;width:210px;max-width:100%;height:auto;margin:0 0 12px}
#ct-site .ars2-lockup{width:210px;max-width:100%}
#ct-site .ars2-lockup .ars2-logo{width:100%}
#ct-site .ars2-lockup .bar{margin-left:auto;margin-right:auto}
#ct-site .kpis span.ct-measure-accuracy{border-color:#47956e}
#ct-site .kpis span.ct-measure-repeatability{border-color:#d58d43}
#ct-site .kpis span.ct-measure-scale{border-color:#d5b459}
#ct-site .kpis span.ct-measure-speed{border-color:#c65e53}
#ct-site .audience>.ct-native:not(:first-child) span{color:var(--ink)}
/* 1.0.1: preserve horizontal layout and semantic element spacing in Elementor. */
#ct-site header.ct-node{max-width:1240px;margin:0 auto;padding:26px 40px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:30px}
#ct-site nav.ct-node{display:flex;flex-direction:row;width:auto;flex:0 1 auto;gap:30px;align-items:center;flex-wrap:wrap}
#ct-site .audience.ct-node{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:18px 35px}
#ct-site .contact.ct-node{flex-direction:row}
#ct-site .foot.ct-node{flex-direction:row}
#ct-site .family.ct-node{flex-direction:row}
#ct-site footer.ct-node{padding:30px 0}
@media(max-width:800px){
 #ct-site header.ct-node{padding:22px 23px;gap:15px}
 #ct-site nav.ct-node{gap:12px 17px}
 #ct-site .audience.ct-node{gap:12px 23px}
 #ct-site .foot.ct-node{flex-direction:column}
}

@media(max-width:800px){#ct-site nav.ct-node a{display:inline}}

/* 1.0.2: balance business identity and personal name. */
#ct-site .wordmark{font-size:30px;font-weight:700}
#ct-site h1{font-size:clamp(40px,5vw,64px);font-weight:500;letter-spacing:-2.2px}
@media(max-width:800px){#ct-site h1{font-size:clamp(34px,6vw,40px);letter-spacing:-1.4px}}
