@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800;900&family=Kalam:wght@400;700&display=swap');
:root{--navy:#082b6e;--deep:#001d58;--yellow:#ffd00a;--ice:#edf6ff;--text:#082b6e;--line:#c8def6}
*{box-sizing:border-box}.cdwr-body{margin:0;background:#fff;color:var(--text);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.38}.cdwr-body a{color:inherit;text-decoration:none}.cdwr-body button,.cdwr-body input,.cdwr-body textarea,.cdwr-body select{font:inherit}.cdwr-body p{margin:0 0 1.05em}.cdwr-body h1,.cdwr-body h2,.cdwr-body h3{font-family:'DM Sans',Arial,sans-serif;letter-spacing:-.055em}.cdwr-body h1{font-size:clamp(2.75rem,6vw,5.6rem);line-height:.93;margin:0 0 .18em;font-weight:900}.cdwr-body h1 sup{font-size:.25em;vertical-align:top}.cdwr-body h1 em{font-style:normal;color:var(--yellow);font-size:.68em}.cdwr-body h2{font-size:clamp(1.55rem,2.6vw,2.25rem);font-weight:900;margin:0 0 .65em}.cdwr-body h3{font-size:1.08rem;font-weight:900;margin:.3em 0}.cdwr-body .lead{font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.2;font-weight:600;max-width:700px}.cdwr-body .eyebrow{display:block;font-size:.8rem;letter-spacing:.13em;font-weight:900;margin-bottom:1.1rem}.wrap{width:min(1200px,calc(100% - 48px));margin-inline:auto}.skip{position:absolute;top:-100px;left:12px;background:#fff;padding:10px;z-index:100}.skip:focus{top:12px}.site-header{position:relative;z-index:20;background:#fff;border-bottom:1px solid #dfebf9;box-shadow:0 3px 15px #082b6e0c}.header-inner{width:min(1400px,calc(100% - 36px));min-height:92px;display:flex;align-items:center;gap:25px;margin:auto}.brand{width:205px;flex:none;display:block;line-height:1}.brand img{width:100%;height:auto;display:block}.brand small{display:block;font-size:.64rem;font-weight:900;margin-left:48px;margin-top:-2px}.site-header nav{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:4px;margin-left:auto}.site-header nav a{font-size:.68rem;font-weight:900;white-space:nowrap;letter-spacing:.01em;padding:8px 5px;border-radius:5px}.site-header nav a:hover,.site-header nav a[aria-current]{background:var(--ice)}.site-header nav .nav-cta{background:var(--yellow);border-radius:30px;padding:10px 16px;margin-left:5px}.menu-toggle{display:none;border:0;background:var(--yellow);color:var(--deep);font-weight:900;border-radius:8px;padding:10px 14px;margin-left:auto;cursor:pointer}.hero{position:relative;overflow:hidden}.hero:before{content:"";position:absolute;left:-15vw;top:-17vw;width:38vw;height:38vw;border:24px solid var(--yellow);border-radius:50%;transform:rotate(-10deg);pointer-events:none;opacity:.95}.hero:after{content:"";position:absolute;right:-8vw;top:-16vw;width:56vw;height:23vw;background:var(--deep);border-radius:50%;transform:rotate(8deg);pointer-events:none}.hero-home{background:radial-gradient(circle at 40% 42%,#f9fcff 18%,#ddecfa 60%,#bbd9f5);min-height:465px}.hero-soft{background:radial-gradient(circle at 50% 70%,#fff 20%,#e4f0fc 78%);min-height:390px}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.2fr .8fr;gap:45px;align-items:center;min-height:inherit;padding-block:55px}.hero-grid>div:first-child{max-width:680px}.hero-grid p:not(.lead){max-width:580px}.hero-home h1{font-size:clamp(3rem,6vw,6.2rem)}.hero-home .lead{max-width:480px}.hero-graphic{align-self:stretch;position:relative;min-height:250px;color:#0c3d82;background:linear-gradient(145deg,transparent 42%,#052d70 100%);border-radius:44% 0 0 0;overflow:hidden}.skyline{position:absolute;right:4%;bottom:-20px;white-space:nowrap;font-family:Georgia,serif;font-size:11rem;letter-spacing:-.1em;opacity:.36}.graphic-paw{position:absolute;right:10%;bottom:3%;font-size:8rem;color:#ffd00a;opacity:.45}.script-art{justify-self:center;position:relative;color:#fff;font-family:Kalam,cursive;font-size:clamp(2.2rem,4.5vw,4.5rem);line-height:1.06;transform:rotate(-8deg);text-align:center;text-shadow:0 2px 12px #001d5880}.script-art:after{content:"";height:5px;width:100%;background:var(--yellow);display:block;border-radius:5px;transform:rotate(-7deg)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:47px;padding:12px 26px;border:0;border-radius:999px;background:var(--yellow);color:var(--deep)!important;font-weight:900;font-size:.77rem;text-align:center;box-shadow:0 6px 12px #d6ae1640;transition:transform .18s,filter .18s}.button:hover{transform:translateY(-2px);filter:brightness(1.04)}.button-light{background:#fff;box-shadow:none;border:1px solid var(--navy)}.button.big{min-width:310px;margin-top:15px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.actions.center{justify-content:center}.section{padding-block:55px 70px}.section-tight{padding-top:10px}.icon-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-bottom:48px}.icon-row>div{text-align:center;display:flex;flex-direction:column;align-items:center;font-size:.78rem;line-height:1.2}.icon-row b{width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:#ecf5ff;color:var(--navy);font-family:Georgia,serif;font-size:2.1rem;font-weight:400;margin-bottom:8px}.icon-row strong{font-weight:900}.icon-row span{max-width:150px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:linear-gradient(#eff6ff,#e6f2fd);border:1px solid #d7e9fc;border-radius:15px;padding:24px;min-height:160px}.card-icon{font-size:2rem}.card p{font-size:.9rem}.band{background:linear-gradient(120deg,#073d89,#00194f);color:#fff;min-height:100px;display:flex;align-items:center;position:relative;overflow:hidden}.band:before{content:"";position:absolute;inset:auto -10% -120% 60%;height:210px;border:2px solid #9abdea40;border-radius:50%}.band-inner{width:min(1200px,calc(100% - 48px));margin:auto;display:flex;align-items:center;gap:25px;padding-block:20px}.paw{font-size:4rem;line-height:1;color:#a8d0f6}.hand{font-family:Kalam,cursive;font-size:clamp(1.25rem,2.2vw,2rem);line-height:1.05;transform:rotate(-3deg)}.band .button{margin-left:auto;flex:none}.wide-copy{max-width:850px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin-top:28px}.line-list,.check-list{list-style:none;margin:0;padding:0}.line-list li,.check-list li{border-bottom:1px solid var(--line);padding:8px 4px 8px 34px;position:relative;font-weight:700}.line-list li:before,.check-list li:before{content:"♟";position:absolute;left:0;background:var(--navy);border-radius:50%;width:22px;height:22px;text-align:center;color:#fff;font-size:.75rem;line-height:22px}.check-list li:before{content:"✓";background:var(--yellow);color:var(--deep)}.instructor-top{display:grid;grid-template-columns:1.2fr .8fr;gap:50px;align-items:center}.instructor-top h1{font-size:clamp(2.8rem,5vw,5rem)}.instructor-top .icon-row{grid-template-columns:repeat(4,1fr);margin:22px 0}.icon-row.compact b{width:55px;height:55px;font-size:1.7rem}.phone-visual{display:flex;flex-direction:column;align-items:center}.phone{width:220px;height:390px;border:10px solid #10141d;border-radius:34px;background:linear-gradient(155deg,#001d58,#062b6e);color:#fff;box-shadow:8px 12px 0 #082b6e55,0 25px 38px #001c5029;display:flex;align-items:center;justify-content:space-around;flex-direction:column;text-align:center}.phone-logo{font-weight:900;font-size:1.3rem;line-height:.9}.phone-logo:first-letter{color:var(--yellow)}.play{font-size:2rem;display:grid;place-items:center;border:2px solid #fff;border-radius:50%;width:65px;height:65px;padding-left:5px}.phone small{font-weight:900}.phone-visual p{text-align:center;margin-top:20px;font-size:.8rem}.phone-visual p strong{font-size:1.3rem}.number-list{list-style:none;counter-reset:module;padding:0;columns:2;max-width:700px}.number-list li{counter-increment:module;break-inside:avoid;margin-bottom:10px;display:flex;align-items:center;gap:12px;font-weight:700}.number-list li:before{content:counter(module);display:grid;place-items:center;background:var(--yellow);color:var(--deep);border-radius:50%;width:26px;height:26px;flex:none}.course-card{display:flex;align-items:center;gap:18px;border:1px solid #d6e5f6;background:#f1f7ff;border-radius:14px;padding:20px;max-width:780px}.course-card>span{font-size:2.2rem}.course-card strong{flex:1}.course-card small{display:block;font-weight:500;margin-top:4px}.course-card>b{font-size:2rem}.directory{max-width:1248px}.directory>p{max-width:850px}.table-panel{background:#f4f9ff;border:1px solid #d7e8f9;border-radius:15px;padding:20px;margin-top:28px;overflow-x:auto;box-shadow:0 8px 24px #002c6610}.table-panel table{width:100%;border-collapse:collapse;font-size:.85rem}.table-panel th{background:var(--navy)!important;color:#fff!important;text-align:left;padding:12px}.table-panel td{padding:10px;border-bottom:1px solid #d8e8f9}.table-panel tr:nth-child(even) td{background:#eaf3fd}.table-panel input,.table-panel select{background:#fff;border:1px solid #c7dbf1;border-radius:7px;padding:8px;color:var(--navy)}.rete{display:grid;grid-template-columns:.9fr 1.1fr;gap:36px}.map-art{height:420px;background:linear-gradient(135deg,#dfedfc,#83b8f8);clip-path:polygon(38% 0,55% 9%,53% 25%,71% 40%,65% 57%,90% 72%,82% 84%,62% 79%,44% 100%,25% 84%,40% 60%,15% 36%);display:grid;place-items:center;text-align:center;font-weight:900;font-size:2rem;color:#0e4a9e;letter-spacing:.2em}.faq>p{max-width:680px}.faq-list{max-width:920px;margin:30px 0}.faq details{border-bottom:1px solid #cbdff5;background:#f1f7fe}.faq details:first-child{border-radius:10px 10px 0 0}.faq details:last-child{border-radius:0 0 10px 10px}.faq summary{cursor:pointer;list-style:none;padding:15px 46px 15px 18px;font-weight:800;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';position:absolute;right:18px;font-size:1.5rem;top:7px}.faq details[open] summary:after{content:'−'}.faq details p{padding:0 45px 18px 18px;max-width:800px}.faq-help{max-width:920px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#e7f3ff;border-radius:15px;padding:20px}.faq-help p{margin:4px 0 0;font-size:.9rem}.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.contact-list{list-style:none;padding:0;margin:28px 0}.contact-list li{display:flex;align-items:center;gap:15px;margin-bottom:19px}.contact-list b{display:grid;place-items:center;width:42px;height:42px;background:var(--navy);color:#fff;border-radius:50%;font-size:1.2rem;flex:none}.contact-list strong{display:block}.form-panel{background:#f4f9ff;border:1px solid #d6e8f7;border-radius:16px;padding:25px}.form-panel input:not([type=checkbox]),.form-panel textarea,.form-panel select{border:1px solid #c6dbef!important;border-radius:8px!important;background:#fff!important;padding:12px!important;color:var(--navy)!important;width:100%!important}.form-panel button[type=submit]{background:var(--yellow)!important;color:var(--navy)!important;border:0!important;border-radius:30px!important;padding:13px 25px!important;font-weight:900!important}.site-footer{background:#00194f;color:#fff;padding:25px 0}.footer-inner{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.footer-inner small{margin-left:auto}.footer-inner a{text-decoration:underline}
@media(max-width:1050px){.header-inner{min-height:72px}.brand{width:170px}.menu-toggle{display:block}.site-header nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;box-shadow:0 12px 20px #00245024;padding:15px 24px;grid-template-columns:repeat(2,1fr)}.site-header nav.open{display:grid}.site-header nav a{font-size:.8rem;padding:10px}.site-header nav .nav-cta{margin:0}.hero:after{top:-14vw}.hero-grid{gap:25px}}
@media(max-width:700px){.wrap,.band-inner{width:min(100% - 32px,1200px)}.section{padding-block:38px 50px}.hero-grid,.instructor-top,.rete,.contact,.two-col{grid-template-columns:1fr}.hero-grid{padding-block:45px}.hero-graphic{display:none}.hero:after{width:55vw;height:22vw;top:-14vw}.script-art{color:var(--navy);font-size:2.1rem;justify-self:end;margin-top:10px;text-shadow:none}.hero-grid{gap:10px}.icon-row{grid-template-columns:repeat(3,1fr);gap:14px}.icon-row>div{font-size:.72rem}.icon-row b{width:52px;height:52px;font-size:1.7rem}.cards{grid-template-columns:1fr}.card{min-height:auto}.band-inner{gap:12px;flex-wrap:wrap}.band .button{margin-left:0}.paw{font-size:3rem}.phone-visual{display:none}.number-list{columns:1}.map-art{height:240px}.faq-help{align-items:flex-start;flex-direction:column}.footer-inner small{margin-left:0}.site-header nav{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.site-header nav{grid-template-columns:1fr}.hero-home h1{font-size:2.75rem}.icon-row{grid-template-columns:repeat(2,1fr)}.instructor-top .icon-row{grid-template-columns:repeat(2,1fr)}.button.big{min-width:0;width:100%}}

.hero-graphic{background:linear-gradient(125deg,#14529a99,#001f62),url("city.svg") center bottom/cover no-repeat}.hero-graphic .skyline{display:none}.hero-graphic .graphic-paw{font-size:5rem;right:6%;bottom:5%;opacity:.75}

.phone-visual h2{font-size:1.7rem;text-align:center;margin-bottom:.3em}.phone-visual>p{max-width:320px;text-align:center;margin:0 0 18px}.phone iframe{width:100%;height:100%;border:0;border-radius:23px;background:#001d58}.phone{padding:0;overflow:hidden}.phone-visual .phone{margin:auto}@media(max-width:700px){.phone-visual{display:flex;margin-top:30px}}

/* Reference artwork: compact masthead, sweeping blue edge and yellow paw. */
.cdwr-body{background:#f9fcff}.site-header{box-shadow:none;border-bottom:0}.header-inner{min-height:86px}.brand{width:250px}.brand img{display:block;width:100%}.brand small{display:none}.site-header nav a{font-size:.66rem}.cdwr-body main{position:relative;isolation:isolate;background:linear-gradient(180deg,#e8f4ff 0,#fff 300px)}
.cdwr-body:not(.cdwr-home) main:before{content:"";position:absolute;z-index:0;top:0;left:0;right:0;height:92px;background:linear-gradient(110deg,#11519c,#001f61 70%);clip-path:ellipse(77% 65% at 78% 0%)}
.cdwr-body:not(.cdwr-home) main:after{content:"";position:absolute;z-index:0;left:-125px;top:-126px;width:330px;height:330px;border:20px solid var(--yellow);border-radius:50%;pointer-events:none}
.cdwr-body:not(.cdwr-home) main>.wrap,.cdwr-body:not(.cdwr-home) main>.hero{position:relative;z-index:1}.cdwr-body:not(.cdwr-home) main>.wrap.section:first-child{padding-top:110px}.cdwr-body:not(.cdwr-home) .hero{padding-top:55px;background:transparent;min-height:330px}.cdwr-body:not(.cdwr-home) .hero:before,.cdwr-body:not(.cdwr-home) .hero:after{display:none}
.cdwr-body .hero-grid{padding-block:34px}.cdwr-body:not(.cdwr-home) .hero-grid{min-height:280px}.cdwr-body .section{padding-block:35px 45px}.cdwr-body h1{font-weight:900}.cdwr-body .hero-soft h1{font-size:clamp(2.8rem,5vw,4.7rem)}.cdwr-body .lead{line-height:1.18}.cdwr-body .icon-row{margin-bottom:28px}.cdwr-body .card{padding:18px;min-height:125px}.cdwr-body .band{min-height:115px}.cdwr-body .paw{font-size:0;display:block;flex:none;width:58px;height:58px;background:url("paw.svg") center/contain no-repeat;filter:brightness(0) invert(1);opacity:.8}.cdwr-body .band:after{content:"";position:absolute;right:0;bottom:-60px;width:42%;height:180px;background:url("city.svg") center/contain no-repeat;opacity:.23;pointer-events:none}.cdwr-body .band-inner{position:relative;z-index:1}.cdwr-body .site-footer{background:#00194f}.cdwr-body .hero-graphic{background:url("city.svg") right bottom/cover no-repeat,linear-gradient(115deg,#4280c0,#00266b 68%);border-radius:45% 0 0 0}.cdwr-body .hero-graphic .graphic-paw{width:55px;height:55px;font-size:0;background:url("paw.svg") center/contain no-repeat;right:5%;bottom:8%;opacity:1}.cdwr-body .hero-home:after{top:-18vw}.cdwr-body .hero-home{min-height:390px}.cdwr-body .hero-home .hero-grid{min-height:390px}.cdwr-body .phone-visual h2{font-size:1.35rem}.cdwr-body .phone-visual>p{font-size:.88rem}.cdwr-body .instructor-top{align-items:start;gap:30px}.cdwr-body .instructor-top .phone-visual{padding-top:8px}.cdwr-body .instructor-top h1{font-size:clamp(2.9rem,5vw,4.9rem)}
@media(max-width:1050px){.header-inner{min-height:74px}.brand{width:215px}}
@media(max-width:700px){.brand{width:195px}.cdwr-body:not(.cdwr-home) main:before{height:60px}.cdwr-body:not(.cdwr-home) main:after{left:-100px;top:-130px;width:270px;height:270px;border-width:16px}.cdwr-body:not(.cdwr-home) main>.wrap.section:first-child{padding-top:84px}.cdwr-body:not(.cdwr-home) .hero{padding-top:37px}.cdwr-body .hero-grid{padding-block:30px}.cdwr-body .hero-home{min-height:0}.cdwr-body .hero-home .hero-grid{min-height:0}.cdwr-body .instructor-top .phone-visual{padding-top:0}.cdwr-body .section{padding-block:30px 40px}.cdwr-body .band:after{width:70%}}

.faq-tabs{display:flex;flex-wrap:wrap;gap:4px;margin-top:28px;max-width:1100px}.faq-tabs button{padding:10px 20px;border:1px solid #cbdff5;border-radius:8px 8px 0 0;background:#eef6ff;color:var(--navy);font-size:.8rem;font-weight:800;cursor:pointer}.faq-tabs button.active,.faq-tabs button:hover{background:var(--yellow);border-color:var(--yellow)}.faq-list,.faq-help{max-width:1100px}.faq-list{margin-top:0}.faq-list details[hidden]{display:none}@media(max-width:700px){.faq-tabs{gap:5px}.faq-tabs button{border-radius:7px;padding:8px 10px;font-size:.72rem}}

.map-art{height:auto;max-width:420px;clip-path:none;background:none;display:block}.map-art img{display:block;width:100%;height:auto;border-radius:18px}.rete .table-panel{max-height:470px;overflow:auto}

/* Instructor video phone */
.cdwr-body .instructor-top{grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);align-items:start;gap:clamp(35px,5vw,80px)}
.cdwr-body .instructor-top .phone-visual{padding-top:0;align-self:start}
.cdwr-body .phone{position:relative;width:min(100%,330px);height:auto;aspect-ratio:9/16;padding:0;border:6px solid #121722;border-radius:43px;background:#080d18;box-shadow:0 0 0 2px #566071,9px 14px 0 #0b2a6870,0 30px 55px #001e5850;overflow:visible;display:block;isolation:isolate}
.cdwr-body .phone:before{content:"";position:absolute;left:32%;top:5px;width:36%;height:19px;border-radius:0 0 15px 15px;background:#090d16;z-index:4;pointer-events:none}
.cdwr-body .phone:after{content:"";position:absolute;right:-9px;top:23%;width:3px;height:62px;border-radius:0 3px 3px 0;background:#394250}
.cdwr-body .phone iframe,.cdwr-body .phone-poster{position:absolute;inset:3px;width:calc(100% - 6px);height:calc(100% - 6px);border:0;border-radius:34px}
.cdwr-body .phone iframe{background:#001d58}
.cdwr-body .phone-poster{z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:30px;padding:55px 22px 32px;color:#fff;cursor:pointer;background:linear-gradient(145deg,#001b56d9,#00113fe8),url("city.svg") center bottom/auto 52% no-repeat,linear-gradient(160deg,#12458c,#00113b);text-align:center}
.cdwr-body .phone-poster[hidden]{display:none}
.cdwr-body .phone-brand{display:flex;gap:10px;align-items:center;justify-content:center;font-weight:900;line-height:.95;font-size:1.4rem;text-align:left;letter-spacing:-.06em}
.cdwr-body .phone-brand img{width:55px;height:55px;object-fit:contain}
.cdwr-body .phone-brand sup{font-size:.45em;vertical-align:top}
.cdwr-body .phone-play{display:grid;place-items:center;width:83px;height:83px;padding-left:5px;border:3px solid white;border-radius:50%;font-size:2rem;line-height:1;box-shadow:0 0 0 10px #ffffff17;transition:transform .2s,background .2s}
.cdwr-body .phone-poster:hover .phone-play,.cdwr-body .phone-poster:focus-visible .phone-play{transform:scale(1.08);background:#ffcc00;color:#001b56}
.cdwr-body .phone-tagline{font-size:1.3rem;font-weight:900;line-height:1.07;letter-spacing:-.04em}
.cdwr-body .phone-hint{font-size:.65rem;letter-spacing:.13em;font-weight:800;opacity:.85}
.cdwr-body .phone-caption{margin:19px 0 0;text-align:center;font-size:.93rem;color:#294578}
@media(max-width:800px){.cdwr-body .instructor-top{grid-template-columns:1fr;gap:35px}.cdwr-body .phone-visual{display:flex}.cdwr-body .phone{width:min(100%,315px)}}
@media(max-width:420px){.cdwr-body .phone{width:min(100%,300px)}.cdwr-body .phone-poster{gap:22px}}

/* October 23 full-size reference layout */
.cdwr-body{font-size:20px;line-height:1.34;background:#fff}
.cdwr-body h1{font-size:clamp(3.7rem,7vw,6.6rem);line-height:.95;letter-spacing:-.065em;margin-bottom:.13em}
.cdwr-body h2{font-size:clamp(2rem,3.5vw,3.2rem);line-height:1.05;letter-spacing:-.055em}
.cdwr-body .lead{font-size:clamp(2rem,3.8vw,3.5rem);line-height:1.1;font-weight:500;max-width:960px;margin-bottom:.38em}
.cdwr-body .eyebrow{font-size:1.35rem;letter-spacing:.08em;margin-bottom:.35em}
.cdwr-body .section{padding-block:65px 75px}
.cdwr-body .wrap{width:min(1200px,calc(100% - 80px))}
.cdwr-body .site-header{border-radius:0;box-shadow:0 3px 20px #001f6020}
.cdwr-body .header-inner{width:min(1360px,calc(100% - 48px));min-height:116px;gap:22px}
.cdwr-body .brand{width:270px}
.cdwr-body .site-header nav{gap:3px 8px}
.cdwr-body .site-header nav a{font-size:.78rem;padding:8px 5px;line-height:1.15;border-radius:0}
.cdwr-body .site-header nav a[aria-current]{background:none;border-bottom:4px solid var(--yellow)}
.cdwr-body .site-header nav .nav-cta{font-size:1rem;padding:15px 24px;border-radius:24px;border:0;background:var(--yellow);margin-left:10px}
.cdwr-body:not(.cdwr-home) main:before{height:145px;clip-path:ellipse(78% 60% at 67% 0%)}
.cdwr-body:not(.cdwr-home) main:after{width:390px;height:390px;top:-130px;left:-160px;border-width:27px}
.cdwr-body:not(.cdwr-home) main>.wrap.section:first-child{padding-top:155px}
.cdwr-body .button,.cdwr-body .form-panel button[type=submit]{font-size:1.05rem;padding:19px 34px;border-radius:45px;font-weight:900}
.cdwr-body .button:hover,.cdwr-body .form-panel button[type=submit]:hover{filter:brightness(.96);transform:translateY(-2px)}
.cdwr-body .icon-row{gap:18px;margin:35px 0 55px}
.cdwr-body .icon-row b{width:100px;height:100px;font-size:3.1rem;background:#eef7ff}
.cdwr-body .icon-row strong{font-size:1.05rem}
.cdwr-body .icon-row span{font-size:.95rem;line-height:1.16}
.cdwr-body .cards{gap:18px}
.cdwr-body .card{min-height:250px;padding:26px;border-radius:18px}
.cdwr-body .card h3{font-size:1.55rem}
.cdwr-body .card p{font-size:1.05rem}
.cdwr-body .band{min-height:215px;padding-top:38px}
.cdwr-body .band:before{content:"";position:absolute;left:-10%;right:-10%;top:-51px;height:85px;border:0;border-radius:50%;background:#fff}
.cdwr-body .band-inner{width:min(1200px,calc(100% - 80px));gap:38px;padding-block:42px}
.cdwr-body .paw{width:100px;height:100px}
.cdwr-body .hand{font-size:clamp(2.2rem,3.4vw,3.8rem)}
.cdwr-body .band:after{height:230px;width:35%;bottom:-45px;opacity:.35}
.cdwr-body .site-footer{padding:24px 0}

/* Home, project, patent and academy */
.cdwr-body .hero-home{min-height:760px;background:#fff}
.cdwr-body .hero-home .hero-grid{min-height:760px;grid-template-columns:1.08fr .92fr;align-items:center}
.cdwr-body .hero-home h1{font-size:clamp(4.1rem,6vw,6.4rem)}
.cdwr-body .hero-home p:not(.lead),.cdwr-body .hero-soft p:not(.lead){font-size:1.45rem;max-width:740px}
.cdwr-body .hero-home .hero-graphic{align-self:stretch;margin-block:-35px;background:url("city.svg") center bottom/130% auto no-repeat,linear-gradient(135deg,#86b5e6,#00286d 52%);border-radius:42% 0 0 8%;box-shadow:-50px 0 95px #fff inset}
.cdwr-body .hero-home .actions{display:flex;flex-wrap:wrap;gap:18px;margin-top:35px}
.cdwr-body .hero-soft .hero-grid{min-height:650px;align-items:center}
.cdwr-body .hero-soft .script-art{font-size:clamp(2.7rem,4.5vw,5rem);line-height:1.14}
.cdwr-body .hero-soft:after{background:#002b70}
.cdwr-body .hero-soft .button{margin-top:14px}
.cdwr-body .wide-copy{font-size:1.42rem;max-width:1120px;line-height:1.27}
.cdwr-body .two-col{gap:80px;margin-top:55px}
.cdwr-body .line-list,.cdwr-body .check-list{font-size:1.3rem}
.cdwr-body .number-list{font-size:1.25rem}
.cdwr-body .course-card{padding:25px 35px;font-size:1.5rem;border-radius:22px}
.cdwr-body .course-card small{font-size:1.05rem}
.cdwr-body.cdwr-academy .section>.icon-row{padding:28px;border-radius:25px;background:#f0f8ff;margin-top:20px}
.cdwr-body.cdwr-academy .section>.icon-row b{background:transparent}
.cdwr-body.cdwr-academy .section>h2:not(:first-child){margin-top:45px}
.cdwr-body.cdwr-istruttore .instructor-top{gap:65px}
.cdwr-body.cdwr-istruttore .instructor-top h1{font-size:clamp(3.5rem,5.9vw,6rem)}
.cdwr-body.cdwr-istruttore .instructor-top p:not(.lead){font-size:1.38rem;max-width:680px}
.cdwr-body.cdwr-istruttore .phone{width:min(100%,390px)}
.cdwr-body.cdwr-istruttore .instructor-top .icon-row{gap:10px;margin:30px 0}
.cdwr-body.cdwr-istruttore .instructor-top .icon-row>div{background:#f1f8ff;border-radius:22px;padding:14px 6px;min-height:150px}
.cdwr-body.cdwr-istruttore .instructor-top .icon-row b{background:transparent;width:58px;height:58px}

/* Directories */
.cdwr-body .directory>p{max-width:1120px;font-size:1.35rem;line-height:1.28}
.cdwr-body .directory>.lead{font-size:clamp(2rem,3.7vw,3.4rem);max-width:1000px}
.cdwr-body .table-panel{background:transparent;border:0;box-shadow:none;padding:0;margin-top:45px;border-radius:0;overflow-x:auto}
.cdwr-body .table-panel table{font-size:1.05rem;border-collapse:separate;border-spacing:0 3px;min-width:770px}
.cdwr-body .table-panel th{padding:18px 13px!important;font-size:.94rem}
.cdwr-body .table-panel th:first-child{border-radius:13px 0 0 0}
.cdwr-body .table-panel th:last-child{border-radius:0 13px 0 0}
.cdwr-body .table-panel td{background:#f5faff!important;border-top:1px solid #d0e7ff;border-bottom:1px solid #d0e7ff;padding:13px!important}
.cdwr-body .table-panel tr td:first-child{border-left:1px solid #d0e7ff;border-radius:14px 0 0 14px}
.cdwr-body .table-panel tr td:last-child{border-right:1px solid #d0e7ff;border-radius:0 14px 14px 0}
.cdwr-body.cdwr-binomi .table-panel th:nth-child(n+6),.cdwr-body.cdwr-binomi .table-panel td:nth-child(n+6){display:none}
.cdwr-body .dataTables_wrapper .dataTables_length,.cdwr-body .dataTables_wrapper .dataTables_filter,.cdwr-body .dataTables_wrapper .dataTables_info,.cdwr-body .dataTables_wrapper .dataTables_paginate{font-size:1rem!important;color:var(--navy)!important;margin:13px 0}
.cdwr-body .dataTables_wrapper input,.cdwr-body .dataTables_wrapper select{font-size:1rem;padding:13px 18px!important;border:2px solid #c5e0fc!important;border-radius:13px!important;background:#fff!important;color:var(--navy)!important}
.cdwr-body .dataTables_wrapper .dataTables_paginate .paginate_button{border:1px solid #c5e0fc!important;border-radius:9px!important;margin:0 3px;padding:8px 14px!important}
.cdwr-body .dataTables_wrapper .dataTables_paginate .paginate_button.current{background:#00377f!important;color:#fff!important}

/* National network */
.cdwr-body .rete{display:block}
.cdwr-body .section-intro>p:not(.lead){font-size:1.4rem;line-height:1.28;max-width:1100px}
.cdwr-body .rete-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:50px;align-items:start;margin-top:40px}
.cdwr-body .rete .map-art{height:580px;background:none;clip-path:none}
.cdwr-body .rete .map-art img{width:100%;height:100%;object-fit:contain}
.cdwr-body .rete-search h2{font-size:2.4rem}
.cdwr-body .rete-search .table-panel{margin-top:15px;max-height:535px;overflow:auto;border:1px solid #d3e7f9;border-radius:20px;padding:16px;background:#f7fbff}
.cdwr-body .rete-search .table-panel table{min-width:650px;font-size:.82rem}
.cdwr-body .rete-search .table-panel th,.cdwr-body .rete-search .table-panel td{padding:8px!important}
.cdwr-body .rete-stats{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;gap:20px;margin-top:45px}
.cdwr-body .rete-stats>div:not(:last-child){border-right:1px solid #cbe1f7}
.cdwr-body .rete-stats strong{display:block;font-size:4rem;line-height:1;font-weight:900}
.cdwr-body .rete-stats span{display:block;font-size:1.5rem}

/* FAQ */
.cdwr-body .faq>p{max-width:1110px;font-size:1.38rem}
.cdwr-body .faq>.lead{font-size:clamp(2rem,3.8vw,3.6rem)}
.cdwr-body .faq-tabs,.cdwr-body .faq-list,.cdwr-body .faq-help{max-width:none}
.cdwr-body .faq-tabs{gap:0;margin-top:45px;display:grid;grid-template-columns:repeat(6,1fr)}
.cdwr-body .faq-tabs button{font-size:1.03rem;border-radius:15px 15px 0 0;padding:20px 10px;background:#f3f9ff;border:1px solid #c7e2fc}
.cdwr-body .faq-tabs button.active{background:var(--yellow);border-color:var(--yellow)}
.cdwr-body .faq-list details{border:1px solid #c3defb!important;border-radius:20px!important;margin-bottom:2px;background:#f4faff}
.cdwr-body .faq-list{margin:0}
.cdwr-body .faq summary{padding:20px 70px 20px 30px;font-size:1.3rem}
.cdwr-body .faq summary:after{right:27px;top:9px;font-size:2.5rem;font-weight:400}
.cdwr-body .faq details p{font-size:1.1rem;padding:0 55px 25px 30px;max-width:1000px}
.cdwr-body .faq-help{border:1px solid #cfe5fa;border-radius:25px;background:#e8f5ff;padding:30px 35px;margin-top:40px}
.cdwr-body .faq-help strong{font-size:1.7rem}
.cdwr-body .faq-help p{font-size:1.15rem}

/* Contact */
.cdwr-body .contact{display:block}
.cdwr-body .contact .section-intro{max-width:1100px}
.cdwr-body .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:start;margin-top:45px}
.cdwr-body .contact-list{margin:15px 0}
.cdwr-body .contact-list li{gap:24px;margin-bottom:30px;font-size:1.32rem}
.cdwr-body .contact-list b{width:82px;height:82px;font-size:2.2rem;box-shadow:inset 0 0 20px #1766ab50}
.cdwr-body .contact-list strong{font-size:1.34rem}
.cdwr-body .form-panel{background:#f2f9ff;border:0;border-radius:30px;padding:30px}
.cdwr-body .form-panel .wpforms-field{padding:0 0 15px!important}
.cdwr-body .form-panel .wpforms-field-label{font-size:1.04rem;font-weight:700;margin-bottom:7px}
.cdwr-body .form-panel input:not([type=checkbox]),.cdwr-body .form-panel textarea,.cdwr-body .form-panel select{border:2px solid #b9dcff!important;border-radius:15px!important;padding:16px 19px!important;font-size:1.1rem!important;min-height:65px!important}
.cdwr-body .form-panel textarea{min-height:155px!important}
.cdwr-body .form-panel button[type=submit]{width:100%;min-height:72px;background:var(--yellow)!important;color:var(--navy)!important;border-radius:40px!important;font-size:1.4rem!important}

@media(max-width:1050px) and (min-width:821px){
 .cdwr-body .menu-toggle{display:none}
 .cdwr-body .site-header nav{display:flex;position:static;box-shadow:none;padding:0;grid-template-columns:none;gap:0 4px;justify-content:flex-end}
 .cdwr-body .site-header nav a{font-size:.66rem;padding:7px 4px}
 .cdwr-body .site-header nav .nav-cta{font-size:.82rem;padding:12px 16px}
 .cdwr-body .brand{width:245px}
}
@media(max-width:820px){
 .cdwr-body .header-inner{min-height:82px}
 .cdwr-body .brand{width:210px}
 .cdwr-body .menu-toggle{display:block}
 .cdwr-body .site-header nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;padding:15px;box-shadow:0 15px 25px #002c6640;grid-template-columns:repeat(2,1fr)}
 .cdwr-body .site-header nav.open{display:grid}
 .cdwr-body .site-header nav a{font-size:.84rem;padding:12px}
 .cdwr-body .wrap,.cdwr-body .band-inner{width:min(100% - 34px,1200px)}
 .cdwr-body:not(.cdwr-home) main:before{height:90px}
 .cdwr-body:not(.cdwr-home) main:after{width:270px;height:270px;top:-140px;left:-115px;border-width:18px}
 .cdwr-body:not(.cdwr-home) main>.wrap.section:first-child{padding-top:105px}
 .cdwr-body .section{padding-block:45px 55px}
 .cdwr-body h1{font-size:clamp(2.6rem,9vw,4.5rem)}
 .cdwr-body .lead{font-size:clamp(1.8rem,5.5vw,2.8rem)}
 .cdwr-body .section-intro>p:not(.lead),.cdwr-body .directory>p,.cdwr-body .faq>p{font-size:1.17rem}
 .cdwr-body .hero-home,.cdwr-body .hero-home .hero-grid{min-height:0}
 .cdwr-body .hero-home .hero-grid,.cdwr-body .hero-soft .hero-grid{display:block}
 .cdwr-body .hero-home h1{font-size:clamp(3rem,8vw,5rem)}
 .cdwr-body .hero-home .hero-graphic{display:none}
 .cdwr-body .hero-home p:not(.lead),.cdwr-body .hero-soft p:not(.lead){font-size:1.1rem}
 .cdwr-body .hero-soft .hero-grid{min-height:0}
 .cdwr-body .hero-soft .script-art{font-size:2.4rem}
 .cdwr-body .icon-row{gap:12px;margin:25px 0 45px}
 .cdwr-body .icon-row b{width:64px;height:64px;font-size:2rem}
 .cdwr-body .icon-row span{font-size:.85rem}
 .cdwr-body .icon-row strong{font-size:.9rem}
 .cdwr-body .rete-grid,.cdwr-body .contact-grid{grid-template-columns:1fr;gap:30px}
 .cdwr-body .rete .map-art{height:430px}
 .cdwr-body .rete-stats strong{font-size:2.7rem}
 .cdwr-body .rete-stats span{font-size:1rem}
 .cdwr-body .faq-tabs{grid-template-columns:repeat(3,1fr);gap:5px}
 .cdwr-body .faq-tabs button{border-radius:12px;font-size:.95rem;padding:13px 5px}
 .cdwr-body .faq summary{font-size:1.08rem;padding:16px 55px 16px 18px}
 .cdwr-body .faq summary:after{top:8px;right:18px;font-size:2rem}
 .cdwr-body .contact-list li{font-size:1.15rem}
 .cdwr-body .contact-list b{width:65px;height:65px;font-size:1.6rem}
 .cdwr-body .band{min-height:150px}
 .cdwr-body .band-inner{gap:18px;padding-block:30px}
 .cdwr-body .paw{width:65px;height:65px}
 .cdwr-body .hand{font-size:2rem}
}
@media(max-width:550px){
 .cdwr-body{font-size:17px}
 .cdwr-body h1{font-size:clamp(2.65rem,11vw,3.8rem)}
 .cdwr-body .lead{font-size:clamp(1.7rem,7vw,2.3rem)}
 .cdwr-body .eyebrow{font-size:.85rem}
 .cdwr-body .icon-row{grid-template-columns:repeat(2,1fr)}
 .cdwr-body .faq-tabs{grid-template-columns:repeat(2,1fr)}
 .cdwr-body .faq-help{display:block;padding:22px}
 .cdwr-body .faq-help .button{margin-top:20px}
 .cdwr-body .rete .map-art{height:340px}
 .cdwr-body .rete-stats{gap:5px}
 .cdwr-body .rete-stats strong{font-size:1.8rem}
 .cdwr-body .rete-stats span{font-size:.8rem}
 .cdwr-body .form-panel{padding:19px}
 .cdwr-body .band-inner{flex-wrap:wrap}
 .cdwr-body .band .button{margin-left:0}
 .cdwr-body.cdwr-istruttore .instructor-top .icon-row{grid-template-columns:repeat(2,1fr)}
}
.cdwr-body .rete-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.cdwr-body .rete-grid>*{min-width:0}
.cdwr-body .rete-search .table-panel table{min-width:610px}
.cdwr-body .form-panel .wpforms-field-label.wpforms-label-hide{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
.cdwr-body .form-panel .wpforms-field-gdpr-checkbox{font-size:.95rem;color:var(--navy)}
.cdwr-body .form-panel .wpforms-field-gdpr-checkbox input{width:20px;height:20px;accent-color:#003b87;margin-right:8px}
.cdwr-body .form-panel .wpforms-field-gdpr-checkbox label{font-size:.95rem!important}
.cdwr-body .form-panel input::placeholder,.cdwr-body .form-panel textarea::placeholder{color:#001d5a!important;opacity:1}
.cdwr-body .form-panel select{color:#001d5a!important}
@media(max-width:820px){.cdwr-body .rete-grid{grid-template-columns:1fr}}

/* Final visual alignment */
.cdwr-body .header-inner{position:relative;min-height:126px}
.cdwr-body .brand{width:290px}
.cdwr-body .site-header nav{padding-right:132px}
.cdwr-body .site-header nav a{font-size:.78rem}
.cdwr-body .site-header nav .nav-cta{position:absolute;right:0;top:33px;margin:0}
.cdwr-body:not(.cdwr-home) main:after{top:0;left:0;width:380px;height:240px;border:0;border-radius:0;background:var(--yellow);clip-path:ellipse(55% 47% at 0 0)}
.cdwr-body .hero-soft h1{font-size:clamp(3.7rem,8vw,6.5rem)}
.cdwr-body.cdwr-istruttore .instructor-top h1{font-size:clamp(3.7rem,7.5vw,6.5rem)}
.cdwr-body.cdwr-academy .hero-soft .script-art,.cdwr-body.cdwr-patentino .hero-soft .script-art{color:var(--navy);text-shadow:none}
.cdwr-body.cdwr-progetto .hero-soft{background:linear-gradient(90deg,#fff 0%,#fff 47%,#e3f0ff 65%,#002764 100%)}
.cdwr-body.cdwr-progetto .hero-soft .script-art{color:#fff;text-shadow:0 2px 12px #001d5880}
.cdwr-body.cdwr-progetto .hero-soft .hero-grid{background:url("city.svg") right bottom/52% auto no-repeat}
.cdwr-body.cdwr-rete .map-art{background:none}
.cdwr-body .network-filters{display:grid;gap:12px;margin-top:25px;padding:18px;background:#f3f9ff;border-radius:25px}
.cdwr-body .network-filters label{font-size:.85rem;font-weight:800;margin-bottom:-10px}
.cdwr-body .network-filters select,.cdwr-body .network-filters input{width:100%;min-height:67px;padding:14px 20px;border:2px solid #c8e3ff;border-radius:15px;background:#fff;color:var(--navy);font-size:1.2rem;font-family:inherit}
.cdwr-body .network-filters button{min-height:72px;background:var(--yellow);border:0;border-radius:40px;color:var(--navy);font-size:1.35rem;font-weight:900;cursor:pointer}
.cdwr-body .network-filters button:hover{filter:brightness(.96)}
.cdwr-body .network-results{margin-top:25px}
.cdwr-body .network-results[hidden]{display:none!important}
.cdwr-body .network-results h3{font-size:1.4rem}
.cdwr-body .rete .map-art{height:570px}
.cdwr-body .rete .map-art img{border-radius:0}
.cdwr-body .faq>.eyebrow{display:none}
@media(max-width:1050px) and (min-width:821px){
 .cdwr-body .brand{width:285px}
 .cdwr-body .site-header nav{padding-right:130px}
 .cdwr-body .site-header nav .nav-cta{position:absolute;right:0;top:34px}
}
@media(max-width:820px){
 .cdwr-body .header-inner{min-height:82px}
 .cdwr-body .brand{width:210px}
 .cdwr-body .site-header nav{padding-right:15px}
 .cdwr-body .site-header nav .nav-cta{position:static;margin:0}
 .cdwr-body:not(.cdwr-home) main:after{width:240px;height:145px}
 .cdwr-body .hero-soft h1{font-size:clamp(2.7rem,9vw,4.7rem)}
 .cdwr-body.cdwr-istruttore .instructor-top h1{font-size:clamp(2.8rem,9vw,4.8rem)}
 .cdwr-body.cdwr-progetto .hero-soft{background:linear-gradient(180deg,#fff,#f2f9ff)}
 .cdwr-body.cdwr-progetto .hero-soft .script-art{color:var(--navy);text-shadow:none}
 .cdwr-body .rete .map-art{height:380px}
}
@media(min-width:821px){
 .cdwr-body.cdwr-faq h1,.cdwr-body.cdwr-contatti h1,.cdwr-body.cdwr-rete h1{font-size:clamp(4.4rem,8.2vw,6.8rem)}
 .cdwr-body.cdwr-faq .lead,.cdwr-body.cdwr-contatti .lead,.cdwr-body.cdwr-rete .lead{font-size:clamp(2.7rem,4.8vw,4rem)}
 .cdwr-body .section-intro>p:not(.lead),.cdwr-body .faq>p,.cdwr-body .directory>p{font-size:1.5rem}
 .cdwr-body .faq summary{font-size:1.43rem}
 .cdwr-body .faq-tabs button{font-size:1.15rem}
 .cdwr-body .form-panel input:not([type=checkbox]),.cdwr-body .form-panel textarea,.cdwr-body .form-panel select{font-size:1.2rem!important}
 .cdwr-body .hand{font-size:clamp(2.6rem,4.3vw,4.5rem)}
}
