/* Webkaart visual overhaul 0.3.0 - separate, removable presentation layer.
   Existing application logic / database untouched. Brand colors come from the supplied logo.
*/
:root{
  --wk-ink:#12233e;--wk-muted:#5d6c83;--wk-blue:#0753e8;--wk-cyan:#04badb;
  --wk-paper:#fff;--wk-ice:#f4f8fe;--wk-line:#e2eaf5;--wk-shadow:0 14px 44px rgba(22,62,119,.08);
  --navy:#fff;--navy2:#f5f8fd;--panel:#fff;--border:#e2eaf5;--text:#12233e;--muted:#5d6c83;
}
html{scroll-padding-top:100px}body{background:#fff;color:var(--wk-ink)}
h1,h2,h3,h4{color:#11223e;letter-spacing:-.052em}p{color:var(--wk-muted)}
.eyebrow{color:#0869b8;letter-spacing:.16em;font-size:.76rem}
.gradient-text{background:linear-gradient(110deg,#073fee,#0575ed 58%,#05b9d5);background-clip:text;-webkit-background-clip:text;color:transparent}
.text-link{color:#0563bd;border-color:#a6d6fa}.text-link:hover{color:#023cc9}
.btn{background:linear-gradient(110deg,#073fcf,#066de8);border-radius:999px;box-shadow:0 10px 28px #075ce927;color:#fff}
.btn:hover{box-shadow:0 12px 32px #075ce934}.btn.ghost{background:#fff;color:#15416d;border:1px solid #bacbe0;box-shadow:none}
.btn.ghost:hover{border-color:#087be8;background:#f2f8ff}
/* Dark logo contains white text; keep the supplied logo unchanged and maintain contrast on white UI */
.site-header{background:rgba(255,255,255,.97);border-bottom:1px solid var(--wk-line);box-shadow:0 3px 25px #1a477308;position:sticky;top:0;z-index:120}
.site-header .nav-inner{height:91px;gap:18px;width:min(calc(100% - 52px),1450px)}
.site-header .brand{background:#061126;border-radius:16px;padding:14px 14px;box-shadow:0 8px 26px #0a284521}
.site-header .brand img{width:172px;max-width:100%;height:auto}
.site-nav{gap:15px}.site-nav a,.nav-login{color:#254362;font-weight:650;font-size:.82rem}.site-nav a:hover,.nav-login:hover{color:#045ed5}
.nav-ctas{gap:10px}.nav-quote{white-space:nowrap}.nav-group .nav-dropdown{background:#fff;border:1px solid #dce7f4;box-shadow:0 15px 40px #17457814}
.nav-dropdown a:hover{background:#f0f7ff;color:#075cdb}
.locale-controls select{background:#f7faff;border-color:#d5e2f3;color:#244261;font-weight:700}
.mobile-menu{background:#edf5ff;color:#0d4a88;border-color:#d4e4f9}
/* The hero now gives product imagery equal prominence to messaging. */
.wk-hero{background:radial-gradient(ellipse 55% 60% at 99% 24%,#e5f5ff 0%,transparent 65%),linear-gradient(116deg,#fff 20%,#f6faff 100%);border-bottom:1px solid #e6edf6}
.wk-hero .hero-grid{max-width:1420px;grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr);gap:34px;padding:72px 0 82px}
.wk-kicker{color:#075eb7;font-size:.75rem;font-weight:800;letter-spacing:.16em;display:inline-flex;align-items:center;gap:11px}
.wk-spark{background:linear-gradient(125deg,#064ae9,#00d5dd);width:10px;height:10px;border-radius:50%;box-shadow:0 0 0 5px #e3f5ff}
.wk-hero .hero-copy h1{font-size:clamp(3.3rem,5vw,6.1rem);max-width:730px;line-height:1.055;letter-spacing:-.065em;margin:25px 0 24px;font-weight:770;color:#101e38}
.wk-hero .hero-copy>p{color:#596c85;font-size:clamp(1rem,1.25vw,1.16rem);line-height:1.77;max-width:590px}
.wk-hero .hero-actions{margin-top:31px}.wk-hero .hero-actions .btn{font-size:.94rem;min-height:54px;padding:13px 23px}
.wk-proof{display:flex;gap:12px 23px;flex-wrap:wrap;margin-top:38px;font-size:.8rem;color:#4b6a8c}
.wk-proof b{color:#0475d1;font-size:.78rem;margin-right:5px}
.wk-hero-media{min-width:0;position:relative;margin:0;align-self:center;border-radius:30px;background:#e4f1ff;padding:10px;border:1px solid #e7eff8;box-shadow:0 30px 90px rgba(29,85,167,.12);isolation:isolate}
.wk-hero-media>img{display:block;width:100%;aspect-ratio:1.46;object-fit:cover;border-radius:23px}
.wk-hero-media figcaption{font-size:.67rem;line-height:1.3;color:#69809a;background:rgba(255,255,255,.93);position:absolute;bottom:20px;left:24px;padding:6px 9px;border-radius:5px}
.wk-float-chip{position:absolute;right:-10px;top:32px;background:#fff;border:1px solid #e2ebf7;box-shadow:0 12px 38px #14467a22;border-radius:15px;padding:11px 15px;font-size:.75rem;color:#23476c;font-weight:750}
.wk-float-chip span{color:#00b8d8;font-size:1rem}
.wk-value-strip{background:#09234a;color:#fff}.wk-value-strip .container{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:18px 0}
.wk-value-strip span{font-size:.81rem;color:#dfedff;font-weight:600}.wk-value-strip span:first-child{color:#64d7f5;font-size:.65rem;letter-spacing:.14em;font-weight:850}
.section{padding:90px 0}.section-heading{max-width:850px;margin-bottom:43px}.section-heading h2{font-size:clamp(2.3rem,4vw,4.1rem);margin:13px 0}.section-heading>p:last-child{font-size:1.07rem;max-width:715px}
.wk-categories{background:#fff}.wk-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.wk-product-card{min-width:0;overflow:hidden;border:1px solid #e3eaf4;background:#fff;border-radius:24px;box-shadow:0 15px 50px #1c4b7e0d;transition:transform .2s,box-shadow .2s,border-color .2s;display:block}
.wk-product-card:hover{transform:translateY(-5px);box-shadow:0 26px 63px #1c4b7e17;border-color:#a7d2ff}
.wk-product-image{height:315px;background:linear-gradient(145deg,#edf6ff,#eaf2ff);overflow:hidden;position:relative}
.wk-product-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.wk-product-card:hover .wk-product-image img{transform:scale(1.035)}
.wk-pc-3 .wk-product-image img,.wk-pc-4 .wk-product-image img{object-fit:contain}
.wk-product-copy{padding:28px 29px 31px}.wk-product-index{font-size:.64rem;color:#087abb;letter-spacing:.13em;font-weight:800}
.wk-product-copy h3{font-size:1.73rem;line-height:1.1;margin:13px 0 11px}
.wk-product-copy p{line-height:1.6;margin:0 0 15px;font-size:.99rem}
.wk-product-link{font-size:.92rem;color:#065cc6;font-weight:800}
.wk-packages{background:linear-gradient(#f6f9fe,#f1f6fd);border-top:1px solid #e7eef7;border-bottom:1px solid #e7eef7}
.wk-budget-links,.price-filters{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0 0 32px}
.wk-budget-links span{font-size:.8rem;color:#617792;font-weight:750;margin-right:8px}
.wk-budget-links a,.price-filters a{font-size:.81rem;display:inline-flex;padding:10px 15px;border:1px solid #d4e4f5;background:#fff;color:#1e5a98;border-radius:30px;font-weight:750}
.wk-budget-links a:hover,.price-filters a:hover{background:#e4f3ff;border-color:#81b8f6}
.pricing-grid{gap:22px}.price-card{padding:29px;background:#fff;border:1px solid #dfe9f5;border-radius:22px;box-shadow:0 10px 43px #1a4b8211}
.price-card h3{color:#142e55}.price-card .eyebrow{color:#0771b7}.price-card .price{color:#0649c2;font-weight:800;font-size:clamp(2rem,2.4vw,2.9rem)}
.price-card>p,.price-card li{color:#5a6c82}.price-card .price-note{color:#65758b}
.price-card .btn{margin-top:16px}.wk-price-grid .price-card{display:flex;flex-direction:column}.wk-price-grid .price-card .btn{margin-top:auto}
.wk-empty{background:#fff;padding:30px;border-radius:18px;border:1px solid var(--wk-line)}
.wk-showcase-section{background:#fff}
.wk-editorial-grid{display:grid;grid-template-columns:minmax(0,1.14fr) minmax(0,.86fr);align-items:center;gap:66px}
.wk-editorial-media{position:relative;padding:10px;background:#edf6ff;border:1px solid #ddeafa;box-shadow:var(--wk-shadow);border-radius:25px}
.wk-editorial-media img{display:block;border-radius:16px;width:100%;aspect-ratio:1.45;object-fit:cover}
.wk-media-caption{display:block;font-size:.68rem;color:#637d99;margin:12px 8px 4px}
.wk-editorial-text h2{font-size:clamp(2.35rem,3.9vw,4.3rem);margin:15px 0 18px}
.wk-editorial-text>p{line-height:1.75;font-size:1.05rem}
.wk-editorial-checks{display:grid;gap:12px;margin:24px 0 30px;color:#365d83;font-size:.91rem;font-weight:650}
.wk-services{background:#f8fbff;border-top:1px solid #e8eef7}
.service-grid{gap:20px}.service-card{border:1px solid #dfe9f4;background:#fff;padding:30px;border-radius:21px;box-shadow:0 10px 36px #214c840b}
.service-card:hover{background:#fff;box-shadow:0 24px 48px #1c548b17}.service-card h3{color:#142c50;font-size:1.37rem;line-height:1.21}
.service-card .card-symbol{background:#eaf4ff;border-color:#d7eaff;color:#0956d8;border-radius:13px;width:53px;height:53px}
.service-card p{color:#65768d}.service-card .card-category{color:#0474b5}.service-card .card-arrow{color:#075dc6}
.wk-process{background:#fff}.wk-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.wk-process-grid>div{background:#f6faff;padding:32px;border:1px solid #e0eaf5;border-radius:20px}
.wk-process-grid span{font-size:2.1rem;font-weight:850;color:#095dd9}.wk-process-grid h3{font-size:1.42rem;margin:18px 0 10px}.wk-process-grid p{margin-bottom:0}
.wk-service-hero{background:linear-gradient(135deg,#fff,#eef7ff)}.wk-service-hero-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1fr);gap:58px;align-items:center}
.wk-service-hero-grid h1{font-size:clamp(2.7rem,4.4vw,5.6rem);margin:17px 0 24px}.wk-service-hero-grid p:not(.eyebrow){font-size:1.08rem;color:#59718c;max-width:640px}
.wk-service-hero-image{margin:0;padding:9px;background:#fff;box-shadow:0 17px 50px #1456a617;border-radius:25px;border:1px solid #e0eafb;min-width:0}
.wk-service-hero-image img{width:100%;aspect-ratio:1.45;object-fit:cover;display:block;border-radius:18px}.wk-service-hero-image figcaption{font-size:.7rem;color:#708ba4;padding:8px}
.page-hero:not(.wk-service-hero){background:linear-gradient(120deg,#f5faff,#fff);border-bottom:1px solid var(--wk-line)}.page-hero h1{color:#12233e}
/* Forms, content pages, customer portal and BMS must not retain dark backgrounds. */
.form-stack input,.form-stack textarea,.form-stack select,.inline-actions input,.inline-actions select,.filters select{background:#fff;color:#163253;border:1px solid #bfd3e9}
.form-stack label,.checkbox,.form-stack .checkbox{color:#365472}
.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus{border-color:#067bf0;box-shadow:0 0 0 3px #187bef18}
.panel,.metric,.feature-list,.support-message,.kanban-col,.kanban-col a{background:#fff;color:#17345b;border-color:#dce7f5}
.panel h2,.panel h3,.feature-list h2,.metric strong{color:#17345b}
.portal-hero{background:#f1f7ff}.portal-hero h1{color:#163050}.tab-nav a.on,.tab-nav a:hover{color:#0759d4;border-color:#087df0}
.table-scroll td a,td a{color:#075cca}td small{color:#6a7b94}code{color:#1b609c}
.notice{color:#1e5487;background:#e9f5ff;border-color:#b5d6f5}.notice.error{color:#8a2939;background:#fff0f2;border-color:#eab4bc}.notice.success{color:#076570;background:#e6fffd;border-color:#b0e7e2}.notice.warning{color:#7b5817;background:#fff8df;border-color:#e0c781}
.pagination a{color:#235580}.pagination a.active{color:#0368d1;border-color:#0380eb}
.admin-side .brand{background:#061126;border-radius:12px;padding:13px;margin:14px auto;width:calc(100% - 27px);justify-content:center}
.admin-top{color:#24496e}.admin-content{background:#f6f9ff}.admin-nav a{color:#32557b}.admin-nav a:hover,.admin-nav a.on{background:#e8f2ff;color:#0055bb}
.footer{background:#f2f6fc;border-top:1px solid #dfe8f4}.footer .brand{display:inline-flex;background:#061126;border-radius:13px;padding:12px 15px}.footer .brand img{width:190px}
.footer-top>div h4{color:#243e63}.footer-top>div a{color:#526e91}.footer-top>div a:hover{color:#035ad0}.footer-bottom{color:#6b7d96}
.cta-panel{background:radial-gradient(circle at 90% 0,#d2f8ff,transparent 50%),linear-gradient(110deg,#f0f6ff,#e6f4ff);border:1px solid #c6dff2;box-shadow:none}.cta-panel h2{color:#122d58}.cta-panel p{color:#506d8d}
/* Browser and form affordances */
:focus-visible{outline:3px solid #04aed5;outline-offset:3px}
@media(max-width:1260px){.site-header .nav-inner{width:min(calc(100% - 30px),1450px);gap:10px}.site-header .brand img{width:143px}.site-header .brand{padding:11px}.site-nav{gap:9px}.site-nav a{font-size:.75rem}.nav-ctas{gap:5px}.nav-ctas .btn{font-size:.75rem;padding:9px 12px}.locale-controls select{max-width:72px}}
@media(max-width:980px){
  .site-header .nav-inner{height:95px;position:relative}
  .site-header .brand{padding:9px;position:absolute;left:0;top:14px}.site-header .brand img{width:141px}
  .mobile-menu{display:block;position:absolute;right:0;top:21px;z-index:5}
  .site-header .nav-ctas{display:contents}
  .site-header .nav-ctas .nav-quote{position:absolute;right:55px;top:20px;font-size:.76rem;padding:7px 12px;min-height:39px}
  .site-header .nav-ctas .nav-login{position:absolute;right:0;top:73px;font-size:.72rem;display:block!important}
  .locale-controls{position:absolute;left:0;top:72px;gap:6px}.locale-controls select{min-height:30px;padding:2px 6px;max-width:85px}
  .site-nav{top:95px;left:-8px;right:-8px;border:1px solid #e4ebf5;background:#fff;box-shadow:0 25px 50px #123a621d}
  .site-nav.open{display:flex}.site-nav a{color:#244e78;font-size:.98rem}
  .wk-hero .hero-grid{grid-template-columns:1fr;gap:36px;padding-top:66px;padding-bottom:60px}
  .wk-hero .hero-copy h1{max-width:770px;font-size:clamp(3rem,6.9vw,5rem)}
  .wk-hero-media{max-width:850px}.wk-editorial-grid,.wk-service-hero-grid{grid-template-columns:1fr;gap:33px}
  .wk-editorial-media{max-width:850px}.wk-category-grid{gap:15px}
}
@media(max-width:650px){
  .container{width:calc(100% - 36px)}.site-header .nav-inner{width:calc(100% - 30px)}
  .site-header .brand img{width:128px}.site-header .nav-ctas .nav-quote{right:53px;padding:6px 10px;font-size:.73rem}
  .wk-hero .hero-grid{padding-top:44px;padding-bottom:50px;gap:30px}
  .wk-kicker{font-size:.63rem;letter-spacing:.09em}.wk-hero .hero-copy h1{font-size:clamp(2.55rem,10.6vw,3.6rem);line-height:1.07;margin:21px 0}
  .wk-hero .hero-copy>p{font-size:1.03rem;line-height:1.64}
  .wk-hero .hero-actions{display:grid;grid-template-columns:1fr;gap:11px}.wk-hero .hero-actions .btn{width:100%;min-height:49px}
  .wk-proof{gap:7px 13px;margin-top:24px;font-size:.72rem}.wk-hero-media{padding:6px;border-radius:19px}.wk-hero-media img{aspect-ratio:1.28;border-radius:14px}
  .wk-hero-media figcaption{left:11px;bottom:10px;font-size:.56rem}.wk-float-chip{top:7px;right:7px;font-size:.56rem;padding:5px 7px;border-radius:8px}
  .wk-value-strip .container{padding:15px 0;gap:8px 13px}.wk-value-strip span{font-size:.73rem}.wk-value-strip span:first-child{width:100%;font-size:.62rem}
  .section{padding:66px 0}.section-heading h2{font-size:clamp(2.15rem,7.8vw,3rem)}.section-heading{margin-bottom:26px}.section-heading>p:last-child{font-size:.94rem}
  .wk-category-grid,.wk-process-grid{grid-template-columns:1fr;gap:18px}.wk-product-image{height:auto;aspect-ratio:1.49}
  .wk-product-copy{padding:21px 22px 24px}.wk-product-copy h3{font-size:1.55rem}
  .wk-budget-links{gap:7px}.wk-budget-links span{width:100%}.wk-budget-links a{padding:8px 11px;font-size:.76rem}
  .wk-editorial-text h2{font-size:2.4rem}.wk-service-hero-grid h1{font-size:2.65rem}
  .wk-process-grid>div{padding:25px}.footer .brand img{width:177px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.wk-product-image img,.wk-product-card,.btn{transition:none!important}.wk-product-card:hover{transform:none}}
/* Editorial blog + public template gallery */
.template-grid{gap:22px}.template-card{border:1px solid #e1eaf4;border-radius:23px;box-shadow:0 15px 45px #1c4a8010;overflow:hidden;background:#fff}.template-picture{aspect-ratio:1.52;background:#edf6ff}.template-picture img{display:block;width:100%;height:100%;object-fit:cover}.template-info{padding:23px}.template-info h2{font-size:1.4rem}.template-info p:not(.eyebrow){line-height:1.65}
.journal-grid{gap:22px}.wk-post-card{display:block;overflow:hidden;background:#fff;border:1px solid #e0e9f4;border-radius:23px;box-shadow:0 14px 43px #134f8712;transition:transform .18s}.wk-post-card:hover{transform:translateY(-3px)}
.wk-post-image{aspect-ratio:1.75;overflow:hidden;background:#ebf5ff}.wk-post-image img{height:100%;width:100%;object-fit:cover;display:block}.wk-post-info{padding:24px}.wk-post-info h3{margin-top:10px;color:#132e53}.wk-post-info p{color:#61758d}.wk-post-info .card-arrow{color:#075cc2}
@media(prefers-reduced-motion:reduce){.wk-post-card{transition:none}.wk-post-card:hover{transform:none}}
