/* MWLOOK — the modern presentation for the public MyWork pages (owner 2026-11-02: "the fresh,
   modern look: same vibe, same color scheme/branding; new presentation, button schema, cards,
   framed copy, some new illustrations and/or animations"). A layer over each page's own CSS:
   every rule is scoped to body.mw-modern, colours come from the Brand Kit through the kit's
   "mywork" theme, and no words, links, forms or scripts change. Motion stops under
   prefers-reduced-motion (the kit's tokens). */

/* the kit's .k base (font, background, reduced motion) is applied only to the parts the layer adds
   (the top bar, the hero), so each page keeps its own background and light/dark theme */
body.mw-modern{font-family:var(--k-font); -webkit-font-smoothing:antialiased;}
.mw-modern .k{background:transparent;}
body.mw-modern h1,body.mw-modern h2,body.mw-modern h3{font-family:var(--k-font-display); letter-spacing:-.02em;}

/* ── top bar ── */
body.mw-modern header.mw-top{padding:0; margin:0; text-align:left; min-height:0; color:var(--k-text); background:rgba(255,255,255,.92); box-shadow:none;}
body.mw-modern header.mw-top::before,body.mw-modern header.mw-top::after{content:none;}
.mw-modern .mw-top .k-brand{color:var(--k-brand); font-size:1.2rem;}
.mw-modern .mw-top__logo{width:28px; height:28px; border-radius:7px;}
.mw-modern .mw-top .k-nav a{color:var(--k-text); font-size:.95rem;}
.mw-modern .mw-top .k-nav a[aria-current="page"]{color:var(--k-brand); background:var(--k-accent-soft);}
.mw-modern .mw-btn-go{background:var(--mw-green); color:#fff;}
.mw-modern .mw-btn-go:hover{background:#15803d; color:#fff;}
.mw-modern .k-mobile__panel .k-btn{margin-top:.3rem;}
body.theme-dark.mw-modern header.mw-top{background:rgba(15,23,42,.9); --k-text:#e5e7eb; --k-text-muted:#9ca3af; --k-surface:#1e293b; --k-surface-2:#334155; --k-border:#334155;}
.theme-dark.mw-modern .mw-top .k-brand,.theme-dark.mw-modern .mw-top .k-nav a,.theme-dark.mw-modern .mw-top .k-btn--ghost{color:#fff;}

/* ── hero: the brand gradient, split, the real work framed on the right ── */
.mw-modern .mw-hero{position:relative; overflow:hidden; background:var(--k-hero-bg); color:#fff; padding:clamp(2.5rem,6vw,5rem) 0 clamp(3rem,7vw,5.5rem);}
.mw-modern .mw-hero::before{content:""; position:absolute; inset:auto -10% -45% auto; width:46rem; height:46rem; border-radius:50%; background:radial-gradient(closest-side,rgba(255,255,255,.12),transparent); pointer-events:none;}
.mw-modern .mw-hero::after{content:""; position:absolute; left:0; right:0; bottom:-1px; height:48px; background:var(--section-bg,#fff); clip-path:ellipse(70% 100% at 50% 100%);}
.mw-modern .mw-hero__grid{position:relative; z-index:1; display:grid; gap:2.5rem; align-items:center;}
@media (min-width:60rem){ .mw-modern .mw-hero__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:4rem;} }
.mw-modern .mw-hero__copy{text-align:left; padding:0; max-width:none;}
.mw-modern .mw-hero .hero-title{font-size:clamp(2.6rem,6vw,4.2rem); font-weight:800; line-height:1; margin:0 0 .6rem; color:#fff; letter-spacing:-.035em;}
.mw-modern .mw-hero .logo-container{margin:0 0 1rem; text-align:left;}
.mw-modern .mw-hero .logo-container img{max-width:min(100%,360px); width:auto; max-height:120px;}
.mw-modern .mw-hero .tagline-wrap{margin:.2rem 0 1.1rem; text-align:left; display:inline-block;}
.mw-modern .mw-hero .tagline{margin:0; font-size:clamp(1.5rem,3.6vw,2.6rem); letter-spacing:4px; white-space:nowrap;}
@media (max-width:30rem){ .mw-modern .mw-hero .tagline{white-space:normal; font-size:1.6rem; letter-spacing:2px;} }
.mw-modern .mw-hero .hero-byline{justify-content:flex-start; margin:0 0 1.4rem; color:rgba(255,255,255,.9);}
body.mw-modern .mw-hero .mw-hero__contact{display:flex; flex-direction:row; flex-wrap:wrap; gap:.6rem; justify-content:flex-start; align-items:center; margin:0 0 1.4rem;}
.mw-modern .mw-chip{display:inline-flex; align-items:center; gap:.5rem; padding:.55rem .95rem; border-radius:var(--k-pill); background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.28); color:#fff; text-decoration:none; font-weight:600; font-size:.95rem; transition:background-color var(--motion-fast),transform var(--motion-fast) var(--ease-out);}
.mw-modern .mw-chip:hover{background:rgba(255,255,255,.2); transform:translateY(var(--motion-lift));}
.mw-modern .mw-hero__cta{display:flex; flex-wrap:wrap; gap:.75rem;}
.mw-modern .mw-btn-sage{background:linear-gradient(135deg,var(--brand-accent,#6b8f6b),var(--brand-accent,#8fa88f)); color:#fff;}
.mw-modern .mw-btn-sage:hover{background:linear-gradient(135deg,#7da07d,#a8c4a8); color:#fff;}
@media (max-width:40rem){ .mw-modern .mw-hero__cta .k-btn{width:100%;} }
/* the real featured-project photos, framed and fanned out */
.mw-modern .mw-hero__visual{position:relative;}
.mw-modern .mw-stack{position:relative; width:100%; aspect-ratio:5/4; max-width:34rem; margin-inline:auto;}
.mw-modern .mw-stack__card{position:absolute; margin:0; width:72%; border-radius:var(--k-radius); overflow:hidden; background:#fff; box-shadow:0 28px 60px -24px rgba(0,0,0,.55); border:6px solid #fff; animation:k-float-in var(--motion-slow) var(--ease-out) both; animation-delay:calc(var(--i)*140ms + 150ms);}
.mw-modern .mw-stack__card{height:auto;}
.mw-modern .mw-stack__card img{display:block; width:100% !important; height:auto !important; max-height:none !important; aspect-ratio:3/2; object-fit:cover;}
.mw-modern .mw-stack__card figcaption{position:absolute; left:.6rem; bottom:.6rem; background:rgba(255,255,255,.94); color:var(--k-brand); font-size:.8rem; font-weight:700; padding:.3rem .65rem; border-radius:var(--k-pill);}
.mw-modern .mw-stack__card:nth-child(1){left:0; top:8%; z-index:3; transform:rotate(-3deg);}
.mw-modern .mw-stack__card:nth-child(2){right:0; top:0; z-index:2; transform:rotate(4deg); width:60%;}
.mw-modern .mw-stack__card:nth-child(3){right:8%; bottom:0; z-index:4; transform:rotate(-1deg); width:52%;}
.mw-modern .mw-stack--1 .mw-stack__card{left:6%; width:88%; top:6%;}
.mw-modern .mw-house{width:100%; max-width:26rem; display:block; margin-inline:auto; overflow:visible;}
.mw-modern .mw-house__roof{fill:none; stroke:#fff; stroke-width:10; stroke-linecap:round; stroke-linejoin:round;}
.mw-modern .mw-house__body{fill:rgba(255,255,255,.14); stroke:#fff; stroke-width:4;}
.mw-modern .mw-house__door{fill:var(--mw-gold);} .mw-modern .mw-house__win{fill:rgba(255,255,255,.85);}
.mw-modern .mw-house__spark{fill:var(--mw-gold); transform-origin:268px 74px; animation:mw-twinkle 2.6s var(--ease-in-out) infinite;}
@keyframes mw-twinkle{0%,100%{transform:scale(.8); opacity:.7;} 50%{transform:scale(1.15); opacity:1;}}

/* ── sections: roomier, framed, cards that lift ── */
.mw-modern main .section{padding:clamp(3rem,7vw,5rem) 0;}
.mw-modern main .container{max-width:72rem; padding-inline:1.25rem;}
.mw-modern main .section-title{font-size:clamp(1.7rem,3.6vw,2.4rem); font-weight:800; letter-spacing:-.025em; margin-bottom:2rem;}
.mw-modern main .section-title::after{content:""; display:block; width:3rem; height:4px; border-radius:4px; margin:.8rem auto 0; background:linear-gradient(90deg,var(--k-brand),var(--mw-sage));}
/* featured projects */
.mw-modern .projects-row{gap:1.25rem;}
.mw-modern .project-card{border-radius:var(--k-radius); overflow:hidden; border:1px solid var(--k-border); box-shadow:var(--k-shadow-s); background:var(--card-bg,#fff); transition:transform var(--motion-base) var(--ease-out),box-shadow var(--motion-base);}
.mw-modern .project-card:hover{transform:translateY(-4px); box-shadow:var(--k-shadow-l);}
.mw-modern .project-thumbnail{overflow:hidden;}
.mw-modern .project-thumbnail img{transition:transform var(--motion-slow) var(--ease-out);}
.mw-modern .project-card:hover .project-thumbnail img{transform:scale(1.05);}
.mw-modern .project-content{padding:1.1rem 1.25rem 1.3rem;}
.mw-modern .view-all-btn a,.mw-modern .cta-btn{display:inline-flex; align-items:center; gap:.5rem; border-radius:var(--k-pill); padding:.85rem 1.6rem; font-weight:700; box-shadow:none; transition:transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-base),background-color var(--motion-fast);}
.mw-modern .view-all-btn a:hover,.mw-modern .cta-btn:hover{transform:translateY(var(--motion-lift)); box-shadow:var(--k-shadow);}
/* about: framed copy */
.mw-modern .about-content{max-width:46rem; margin:0 auto; background:var(--card-bg,#fff); border:1px solid var(--k-border); border-radius:var(--k-radius-l); padding:clamp(1.5rem,4vw,2.5rem); box-shadow:var(--k-shadow); position:relative;}
.mw-modern .about-content::before{content:""; position:absolute; left:0; top:1.5rem; bottom:1.5rem; width:4px; border-radius:0 4px 4px 0; background:linear-gradient(180deg,var(--k-brand),var(--mw-sage));}
.mw-modern .about-content .address{display:inline-flex; align-items:center; gap:.4rem; margin-top:1rem; padding:.55rem 1rem; border-radius:var(--k-pill); background:var(--k-accent-soft); color:var(--k-brand); font-weight:600;}
.theme-dark.mw-modern .about-content .address{background:rgba(255,255,255,.08); color:#cfe0ff;}
/* services: icon-led cards */
.mw-modern .services-grid{gap:1rem;}
.mw-modern .service-card{border-radius:var(--k-radius); border:1px solid var(--k-border); border-left:1px solid var(--k-border); box-shadow:var(--k-shadow-s); padding:1.4rem 1.4rem 1.5rem; position:relative; overflow:hidden; transition:transform var(--motion-base) var(--ease-out),box-shadow var(--motion-base),border-color var(--motion-base);}
.mw-modern .service-card::before{content:""; display:block; width:2.6rem; height:2.6rem; border-radius:12px; margin-bottom:.9rem; background:var(--k-accent-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232a5298' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.7 6.3a4 4 0 0 0-5.4 5.4L3 18l3 3 6.3-6.3a4 4 0 0 0 5.4-5.4l-2.5 2.5-2.4-.6-.6-2.4z'/%3E%3C/svg%3E") center/1.35rem no-repeat;}
.mw-modern .service-card:hover{transform:translateY(-4px); box-shadow:var(--k-shadow); border-color:color-mix(in srgb,var(--k-brand) 40%,var(--k-border));}
.mw-modern .service-card::after{content:"→"; position:absolute; right:1.1rem; top:1.2rem; color:var(--k-brand); font-weight:800; opacity:.35; transition:transform var(--motion-base) var(--ease-out),opacity var(--motion-base);}
.mw-modern .service-card:hover::after{opacity:1; transform:translateX(3px);}
/* featured offers: plan cards on the brand band */
.mw-modern .featured-offer{position:relative; overflow:hidden;}
.mw-modern .mw-offer-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr)); gap:1.25rem; max-width:62rem; margin:1.5rem auto 0;}
.mw-modern .mw-offer-card{background:#fff; color:var(--k-text); border-radius:var(--k-radius-l); padding:1.8rem 1.6rem; text-align:center; box-shadow:0 26px 50px -26px rgba(0,0,0,.6); display:flex; flex-direction:column; align-items:center; gap:.4rem; transition:transform var(--motion-base) var(--ease-out);}
.mw-modern .mw-offer-card:hover{transform:translateY(-4px);}
.mw-modern .mw-offer-card h3{color:var(--k-brand); margin:0 0 .2rem; font-size:1.25rem;}
.mw-modern .mw-offer-card .offer-tagline{color:var(--k-text-muted); margin:0;}
.mw-modern .mw-offer-card .offer-price{color:var(--k-text); font-size:1.6rem; font-weight:800; letter-spacing:-.02em; margin:.4rem 0;}
.mw-modern .mw-offer-card .cta-btn{margin-top:auto; background:var(--k-brand); color:#fff;}
/* contact form: framed */
.mw-modern .form-wrapper{border-radius:var(--k-radius-l); box-shadow:0 30px 60px -30px rgba(0,0,0,.55); border:1px solid rgba(255,255,255,.15);}
.mw-modern .form-group input,.mw-modern .form-group textarea,.mw-modern .form-group select{border-radius:10px;}
.mw-modern .form-group input:focus,.mw-modern .form-group textarea:focus,.mw-modern .form-group select:focus{outline:3px solid color-mix(in srgb,var(--k-brand) 35%,transparent); outline-offset:1px;}
.mw-modern .contact-form button[type="submit"],.mw-modern .submit-btn{border-radius:var(--k-pill);}

/* ── scroll reveal on the sections (kit.js; only items below the screen; JS off = shown) ── */

/* ── the "all" pages (projects, blog & VLOG, offers): a hero band, framed card grids ── */
.mw-list .page-header{position:relative; overflow:hidden; background:var(--k-hero-bg); padding:clamp(2.5rem,6vw,4.5rem) 0 clamp(3.5rem,8vw,5.5rem); margin-bottom:0; text-align:left;}
.mw-list .page-header::before{content:""; position:absolute; right:-12%; top:-60%; width:40rem; height:40rem; border-radius:50%; background:radial-gradient(closest-side,rgba(255,255,255,.13),transparent); pointer-events:none;}
.mw-list .page-header::after{content:""; position:absolute; left:0; right:0; bottom:-1px; height:40px; background:var(--bg,var(--section-bg,#fff)); clip-path:ellipse(70% 100% at 50% 100%);}
.mw-list .page-header .container{position:relative; z-index:1; max-width:72rem; padding-inline:1.25rem;}
.mw-list .page-header h1{font-size:clamp(2.2rem,5vw,3.4rem); font-weight:800; letter-spacing:-.03em; line-height:1.05; margin:0 0 .6rem; color:#fff;}
.mw-list .page-header p{font-size:1.15rem; opacity:.9; margin:0; color:#fff;}
.mw-list main.container{max-width:72rem; padding-inline:1.25rem;}
.mw-list .nav-back{padding:1.5rem 0 1rem;}
.mw-list .nav-back a{display:inline-flex; align-items:center; gap:.35rem; padding:.45rem .9rem; border-radius:var(--k-pill); border:1px solid var(--k-border); font-size:.9rem; font-weight:600; text-decoration:none; transition:background-color var(--motion-fast),transform var(--motion-fast) var(--ease-out);}
.mw-list .nav-back a:hover{text-decoration:none; transform:translateX(-2px); background:var(--k-accent-soft);}
.theme-dark.mw-list .nav-back a{border-color:rgba(255,255,255,.18);} .theme-dark.mw-list .nav-back a:hover{background:rgba(255,255,255,.08);}
.mw-list .projects-grid,.mw-list .posts-grid,.mw-list .offers-grid{gap:1.4rem; padding-bottom:3.5rem;}
.mw-list .project-card,.mw-list .post-card,.mw-list .offer-card{border-radius:var(--k-radius); overflow:hidden; border:1px solid var(--k-border); box-shadow:var(--k-shadow-s); transition:transform var(--motion-base) var(--ease-out),box-shadow var(--motion-base),border-color var(--motion-base);}
.theme-dark.mw-list .project-card,.theme-dark.mw-list .post-card,.theme-dark.mw-list .offer-card{border-color:rgba(255,255,255,.1);}
.mw-list .project-card:hover,.mw-list .post-card:hover,.mw-list .offer-card:hover{transform:translateY(-5px); box-shadow:var(--k-shadow-l);}
.mw-list .project-card img,.mw-list .post-card img,.mw-list .offer-card img{transition:transform var(--motion-slow) var(--ease-out);}
.mw-list .project-card:hover img,.mw-list .post-card:hover img,.mw-list .offer-card:hover img{transform:scale(1.05);}
.mw-list .project-thumbnail,.mw-list .post-thumbnail,.mw-list .offer-thumbnail,.mw-list .post-image,.mw-list .offer-image{overflow:hidden;}
.theme-dark.mw-modern .mw-top .k-nav a[aria-current="page"]{background:rgba(255,255,255,.14); color:#fff;}
.theme-dark.mw-list .page-header::after{display:none;}

/* ── the individual pages (project, service, offer, blog & VLOG): a brand header, framed sections ── */
body.mw-detail .project-header,body.mw-detail .service-hero,body.mw-detail .offer-header,body.mw-detail .post-header{position:relative; overflow:hidden; background:var(--k-hero-bg) !important; color:#fff; border:0; border-radius:0 0 var(--k-radius-l) var(--k-radius-l); box-shadow:0 24px 50px -30px rgba(15,23,42,.6); padding:clamp(2.2rem,5vw,3.8rem) clamp(1.25rem,4vw,2.5rem); margin:0 0 2rem; text-align:left; -webkit-backdrop-filter:none; backdrop-filter:none;}
body.mw-detail .offer-header,body.mw-detail .post-header{border-radius:var(--k-radius-l); margin-top:.75rem;}
body.mw-detail .project-header::before,body.mw-detail .service-hero::before,body.mw-detail .offer-header::before,body.mw-detail .post-header::before{content:""; position:absolute; right:-10%; top:-70%; width:34rem; height:34rem; border-radius:50%; background:radial-gradient(closest-side,rgba(255,255,255,.14),transparent); pointer-events:none;}
body.mw-detail .project-header .container,body.mw-detail .service-hero .container{position:relative; z-index:1;}
body.mw-detail .project-header h1,body.mw-detail .service-hero h1,body.mw-detail .offer-header h1,body.mw-detail .post-header h1{color:#fff !important; -webkit-text-fill-color:#fff; background:none; font-size:clamp(2rem,4.6vw,3.2rem); font-weight:800; letter-spacing:-.03em; line-height:1.06; margin:.2rem 0 .6rem; position:relative; z-index:1;}
body.mw-detail .project-header .subtitle,body.mw-detail .service-hero .subtitle,body.mw-detail .offer-header p,body.mw-detail .post-header p{color:rgba(255,255,255,.9) !important; font-size:1.12rem; position:relative; z-index:1;}
body.mw-detail .offer-header .category,body.mw-detail .post-header .category,body.mw-detail .project-header .category{display:inline-block; background:rgba(255,255,255,.16); color:#fff; border-radius:var(--k-pill); padding:.25rem .75rem; font-size:.78rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; position:relative; z-index:1;}
/* framed sections and callouts */
body.mw-detail .content-section,body.mw-detail .story-section,body.mw-detail .section,body.mw-detail .callout{border-radius:var(--k-radius); border:1px solid var(--k-border); box-shadow:var(--k-shadow-s);}
.theme-dark.mw-detail .content-section,.theme-dark.mw-detail .story-section,.theme-dark.mw-detail .section,.theme-dark.mw-detail .callout{border-color:rgba(255,255,255,.1);}
body.mw-detail .hero-image,body.mw-detail .hero-image-wrapper img,body.mw-detail .hero-image-section img{border-radius:var(--k-radius); box-shadow:var(--k-shadow-l);}
body.mw-detail .cta-section,body.mw-detail .cta-panel{border-radius:var(--k-radius-l); box-shadow:0 26px 50px -28px rgba(15,23,42,.6); overflow:hidden; position:relative;}
/* buttons: pills that lift */
body.mw-detail .exit-btn,body.mw-detail .cta-buttons a,body.mw-detail .cta-section a,body.mw-detail .cta-panel a{border-radius:var(--k-pill) !important; transition:transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-base);}
body.mw-detail .exit-btn:hover,body.mw-detail .cta-buttons a:hover,body.mw-detail .cta-section a:hover,body.mw-detail .cta-panel a:hover{transform:translateY(var(--motion-lift)); box-shadow:var(--k-shadow);}
body.mw-detail .back-link,body.mw-detail .nav-back a{border-radius:var(--k-pill);}

/* red-team round 1: the language ribbon (sticky, top 0, 28px; 24px on phones) sits ABOVE the new
   sticky header, never on it; anchors land below both; the mobile menu paints above the language
   picker (z 1100). */
html:has(body.mw-modern){scroll-padding-top:calc(var(--k-header-h,4rem) + var(--mw-ribbon-h,0px) + 12px);}
html:has(body.mw-modern .mw-lang-ribbon){--mw-ribbon-h:28px;}
@media (max-width:768px){ html:has(body.mw-modern .mw-lang-ribbon){--mw-ribbon-h:24px;} }
body.mw-modern header.mw-top{top:var(--mw-ribbon-h,0px); z-index:1101;}

/* ── the redesigned footer (MYWORKLOOK) ──
   Owner 2026-11-02: "6 different groups of data, not neatly coordinated" → THREE groups on ONE grid,
   ONE type scale, ONE row style: (1) brand + contact, (2) the link groups (Explore, Portals;
   accordions on phones), (3) a quiet bottom bar (legal & privacy, disclaimer, copyright). The credit
   lockup (.redpill-badge-wrap) keeps the live footer's own rules: absolute, lower-left, every width;
   the bottom padding keeps it and Kwik Chat (bottom-right) clear of the content. */
.mw-modern .mw-foot{position:relative; margin-top:3rem; background:#0b1a33; color:#c9d4e4; padding:0 0 5.5rem; border-top:0; font-size:.95rem; line-height:1.45;}
.mw-modern .mw-foot::before{content:""; position:absolute; inset:0 0 auto 0; height:4px; background:linear-gradient(90deg,var(--brand-primary,#1e3c72),var(--brand-accent,#6b8f6b),var(--brand-secondary,#2a5298));}
.mw-modern .mw-foot__in{max-width:72rem; margin:0 auto; padding-inline:1.25rem;}
.mw-modern .mw-foot a{color:#e7eef8; text-decoration:none;}
.mw-modern .mw-foot a:hover{color:#fff;}
/* the call-to-action band (MyWork storefront only) */
.mw-modern .mw-foot__cta{background:linear-gradient(135deg,var(--brand-primary,#1e3c72),var(--brand-secondary,#2a5298)); padding:2.2rem 0;}
.mw-modern .mw-foot__cta .mw-foot__in{display:flex; flex-wrap:wrap; gap:1rem 2rem; align-items:center; justify-content:space-between;}
.mw-modern .mw-foot__cta-h{margin:0; color:#fff; font-size:clamp(1.2rem,2.6vw,1.6rem); font-weight:800; letter-spacing:-.02em; line-height:1.25; max-width:34rem;}
.mw-modern .mw-foot a.mw-foot__cta-btn{display:inline-flex; align-items:center; gap:.5rem; background:#fff; color:#0b1a33; font-weight:800; padding:.85rem 1.4rem; border-radius:999px; text-decoration:none; box-shadow:0 14px 30px -14px rgba(0,0,0,.6); transition:transform var(--motion-fast) var(--ease-out);}
.mw-modern .mw-foot a.mw-foot__cta-btn:hover{transform:translateY(-2px); color:#0b1a33;}
/* the grid: brand + contact | Explore | Portals */
.mw-modern .mw-foot__grid{display:grid; gap:2rem 3rem; padding-top:2.75rem; padding-bottom:2.25rem; grid-template-columns:1.4fr 1fr 1fr; align-items:start;}
.mw-modern .mw-foot__grid--two{grid-template-columns:1.4fr 2fr;}
.mw-modern footer.mw-foot,.mw-modern footer.mw-foot .mw-foot__grid{text-align:left;}
.mw-modern .mw-foot__name{margin:0 0 1rem; color:#fff; font-size:1.15rem; line-height:1.3;}
.mw-modern .mw-foot__name span{display:block; color:#a9b7cc; font-size:.92rem; font-weight:500; margin-top:.2rem;}
/* group headings: the same small caps everywhere; on wider screens the accordion summary is just the heading */
.mw-modern .mw-foot__h{display:flex; align-items:center; justify-content:space-between; margin:0 0 1rem; color:#fff; font-size:.78rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; list-style:none; cursor:default; pointer-events:none;}
.mw-modern .mw-foot__h::-webkit-details-marker{display:none;}
.mw-modern .mw-foot__h .k-icon{display:none; transition:transform var(--motion-fast) var(--ease-out);}
/* ONE row style for every list (contact, Explore, Portals): a small icon tile + the text, one size, one height */
.mw-modern .mw-foot ul.mw-foot__list{list-style:none; margin:0; padding:0; display:grid; gap:.5rem;}
.mw-modern .mw-foot .mw-foot__row{display:flex; align-items:center; gap:.7rem; min-height:2rem; font-size:.94rem; color:#e7eef8;}
.mw-modern .mw-foot .mw-foot__row > .k-icon{flex:none; width:1.75rem; height:1.75rem; padding:.36rem; border-radius:8px; background:rgba(255,255,255,.07); color:#a9b7cc; transition:background-color var(--motion-fast),color var(--motion-fast);}
.mw-modern .mw-foot .mw-foot__contact .mw-foot__row{align-items:flex-start;}
.mw-modern .mw-foot .mw-foot__contact .mw-foot__row > span{padding-top:.2rem;}
.mw-modern .mw-foot a.mw-foot__row:hover span{text-decoration:underline;}
.mw-modern .mw-foot a.mw-foot__row:hover > .k-icon{background:rgba(255,255,255,.14); color:#fff;}
.mw-modern .mw-foot a.mw-foot__row--home{font-weight:700; color:#fff;}
.mw-modern .mw-foot a.mw-foot__row--home > .k-icon{background:rgba(96,165,250,.2); color:#93c5fd;}
/* (3) the bottom bar: one quiet row of legal links, then the disclaimer and the copyright */
.mw-modern .mw-foot__base{border-top:1px solid rgba(255,255,255,.1); padding-top:1.25rem; display:grid; gap:.6rem; font-size:.82rem; color:#a9b7cc; text-align:left;}
.mw-modern footer.mw-foot .mw-foot__base{text-align:left;}
.mw-modern .mw-foot__legal ul{list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:.35rem 1.25rem;}
.mw-modern .mw-foot__legal a{color:#c9d4e4; font-size:.82rem;}
.mw-modern .mw-foot__legal a:hover{color:#fff; text-decoration:underline;}
.mw-modern .mw-foot__small{margin:0; display:flex; flex-wrap:wrap; gap:.25rem 1.25rem; opacity:.8;}
/* tablets: brand + contact across the top, the two link groups side by side under it */
@media (max-width:60rem){
  .mw-modern .mw-foot__grid,.mw-modern .mw-foot__grid--two{grid-template-columns:1fr 1fr; gap:2rem;}
  .mw-modern .mw-foot__brand{grid-column:1/-1;}
}
/* phones: one column; the link groups are accordion rows with dividers, closed until tapped */
@media (max-width:40rem){
  .mw-modern .mw-foot{padding-bottom:6.5rem;}
  .mw-modern .mw-foot__cta .mw-foot__in{flex-direction:column; align-items:stretch; text-align:left;}
  .mw-modern .mw-foot a.mw-foot__cta-btn{justify-content:center;}
  .mw-modern .mw-foot__grid,.mw-modern .mw-foot__grid--two{grid-template-columns:1fr; gap:0; padding-top:2rem; padding-bottom:1.5rem;}
  .mw-modern .mw-foot__brand{padding-bottom:1.25rem;}
  .mw-modern .mw-foot__col{border-top:1px solid rgba(255,255,255,.1);}
  .mw-modern .mw-foot__col:last-child{border-bottom:1px solid rgba(255,255,255,.1);}
  .mw-modern .mw-foot__h{margin:0; min-height:3rem; cursor:pointer; pointer-events:auto; font-size:.8rem;}
  .mw-modern .mw-foot__h .k-icon{display:block; width:1.1rem; height:1.1rem; color:#a9b7cc;}
  .mw-modern .mw-foot__group[open] .mw-foot__h .k-icon{transform:rotate(180deg);}
  .mw-modern .mw-foot__group .mw-foot__list{padding-bottom:1rem;}
  .mw-modern .mw-foot__base{padding-top:1.25rem; border-top:0;}
  .mw-modern .mw-foot__legal ul{gap:.5rem 1rem;}
}
/* the page's "FX On/Off" transitions toggle, docked into the top bar beside the menu (it floated
   fixed top-left over the brand on phones); hidden until the dock script places it */
body.mw-modern .mw-tx-toggle{visibility:hidden;}
body.mw-modern .mw-top .mw-tx-toggle{visibility:visible; position:static; top:auto; left:auto; z-index:auto; padding:.4rem .65rem; font-size:11px; background:var(--k-surface,#fff); color:var(--k-text-muted,#475569); border:1px solid var(--k-border,#e2e8f0); border-radius:999px; box-shadow:none; -webkit-backdrop-filter:none; backdrop-filter:none; white-space:nowrap;}
body.theme-dark.mw-modern .mw-top .mw-tx-toggle{background:#1e293b; color:#cbd5e1; border-color:#334155;}
.mw-modern .mw-top__fx{display:inline-flex; align-items:center;}
.mw-modern .mw-top__fx:empty{display:none;}

/* the remaining public pages (contact, legal, booking, AR, the urgency offer) on the new look:
   the booking page's own logo bar duplicates the top bar's brand, so the top bar replaces it;
   the urgency offer's sticky countdown sits just under the sticky top bar, never beneath it */
body.mw-book > .header{display:none;}
body.mw-modern .urgency-banner{top:calc(var(--k-header-h,4rem) + var(--mw-ribbon-h,0px));}
/* night-mode guard: the kit theme declares color-scheme:light on <html>, which overrides the meta;
   "only light" here is what tells a force-darkening browser to leave the page as designed */
:root[data-k-theme="mywork"]{color-scheme:only light;}

/* ── estimate-first (owner 2026-11-02): ONE primary action, "Request an Estimate" ── */
.mw-modern .mw-hero__cta .k-btn .k-icon{width:1.1em; height:1.1em;}
.mw-modern .mw-hero .mw-hero__owners{margin:1rem 0 0; font-size:.92rem; color:rgba(255,255,255,.82);}
.mw-modern .mw-hero .mw-hero__owners a{color:#fff; font-weight:600; text-decoration:underline; text-underline-offset:3px;}
/* "What it's like to work with me": four plain rows, second to the work */
.mw-modern .mw-work .mw-work__lead{max-width:40rem; margin:0 auto 1.8rem; text-align:center; font-size:1.05rem; line-height:1.6; color:var(--k-text-muted);}
.mw-modern .mw-work .mw-work__list{list-style:none; margin:0 auto; padding:0; max-width:60rem; display:grid; gap:1rem; grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));}
.mw-modern .mw-work .mw-work__list li{display:grid; grid-template-columns:auto 1fr; grid-template-rows:auto 1fr; align-content:start; column-gap:.8rem; row-gap:.2rem; align-items:start; padding:1.1rem 1.15rem; border-radius:var(--k-radius); background:var(--k-surface); border:1px solid var(--k-border); box-shadow:var(--k-shadow-s); text-align:left;}
.mw-modern .mw-work .mw-work__list .k-icon{grid-row:1 / span 2; align-self:start; width:2.2rem; height:2.2rem; padding:.5rem; border-radius:10px; background:var(--k-accent-soft); color:var(--k-brand);}
.mw-modern .mw-work .mw-work__list strong{font-size:1rem; color:var(--k-text);}
.mw-modern .mw-work .mw-work__list span{font-size:.93rem; line-height:1.5; color:var(--k-text-muted);}
.mw-modern .mw-work .mw-work__cta{text-align:center; margin:1.8rem 0 0;}
.theme-dark.mw-modern .mw-work .mw-work__list li{background:rgba(15,23,42,.9); border-color:rgba(255,255,255,.1);}
.theme-dark.mw-modern .mw-work .mw-work__list strong{color:#fff;}
.theme-dark.mw-modern .mw-work .mw-work__list span,.theme-dark.mw-modern .mw-work .mw-work__lead{color:#cbd5e1;}
/* an in-page jump (the estimate form, any section) lands below the sticky top bar, never under it */
.mw-modern main [id],.mw-modern #estimate,.mw-modern section[id]{scroll-margin-top:calc(var(--k-header-h,4rem) + var(--mw-ribbon-h,0px) + 16px);}

/* ── services, grouped (owner 2026-11-02): a few headings, "And more!", "Do you do…?" ── */
.mw-modern .mw-svc{display:grid; gap:1.2rem; grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr)); max-width:68rem; margin:0 auto; text-align:left;}
@media (min-width:60rem){ .mw-modern .mw-svc{grid-template-columns:repeat(var(--mw-svc-n,3),minmax(0,1fr));} }
.mw-modern .mw-svc__group,.mw-modern .mw-svc__more{padding:1.3rem 1.4rem; border-radius:var(--k-radius); background:var(--k-surface); border:1px solid var(--k-border); box-shadow:var(--k-shadow-s);}
.mw-modern .mw-svc__h{display:flex; align-items:center; gap:.6rem; margin:0 0 .9rem; font-size:1.08rem; color:var(--k-brand);}
.mw-modern .mw-svc__h .k-icon{width:2rem; height:2rem; padding:.45rem; border-radius:9px; background:var(--k-accent-soft); color:var(--k-brand); flex:none;}
.mw-modern .mw-svc__list{list-style:none; margin:0; padding:0; display:grid; gap:.15rem;}
.mw-modern .mw-svc__list a{display:block; padding:.45rem .1rem; color:var(--k-text); text-decoration:none; font-weight:600; border-bottom:1px solid var(--k-border); line-height:1.35;}
.mw-modern .mw-svc__list li:last-child a{border-bottom:0;}
.mw-modern .mw-svc__list a:hover{color:var(--k-brand); text-decoration:underline;}
.mw-modern .mw-svc__more{grid-column:1/-1; display:grid; grid-template-columns:minmax(0,2fr) minmax(14rem,1fr); gap:1.5rem 2.5rem; align-items:start; background:var(--k-accent-soft); padding:1.6rem 1.8rem;}
@media (max-width:48rem){ .mw-modern .mw-svc__more{grid-template-columns:1fr; padding:1.3rem 1.2rem;} }
.mw-modern .mw-svc__ask input{font-size:1.05rem; padding:.85rem 1rem;}
.mw-modern .mw-svc__chips{display:flex; flex-wrap:wrap; gap:.45rem; margin:.8rem 0 0;}
.mw-modern button.mw-svc__chip{width:auto; display:inline-flex; margin:0; box-shadow:none; font:inherit; font-size:.88rem; font-weight:600; padding:.4rem .8rem; border-radius:999px; border:1px solid var(--k-border); background:#fff; color:var(--k-brand); cursor:pointer;}
.mw-modern button.mw-svc__chip:hover{transform:none; border-color:var(--k-brand);}
.mw-modern .mw-svc__next{display:flex; flex-direction:column; gap:.7rem; align-items:stretch; padding-left:1.5rem; border-left:1px solid var(--k-border);}
@media (max-width:48rem){ .mw-modern .mw-svc__next{padding-left:0; border-left:0; border-top:1px solid var(--k-border); padding-top:1.1rem;} }
.mw-modern .mw-svc__next-h{margin:0; font-weight:800; color:var(--k-text);}
.mw-modern .mw-svc__next .k-btn{justify-content:center;}
.mw-modern .mw-svc__next a.mw-svc__askme{margin-top:0; text-align:center;}
.theme-dark.mw-modern .mw-svc__chip{background:#1e293b; color:#93c5fd; border-color:#334155;}
.theme-dark.mw-modern .mw-svc__next-h{color:#fff;}
.mw-modern .mw-svc__and{margin:0; font-size:1.3rem; font-weight:800; color:var(--k-brand);}
.mw-modern .mw-svc__ask label{display:block; font-weight:700; margin:0 0 .35rem; color:var(--k-text);}
.mw-modern .mw-svc__ask input{width:100%; padding:.7rem .85rem; border-radius:10px; border:1px solid var(--k-border); background:#fff; color:var(--k-text); font:inherit;}
.mw-modern .mw-svc__ans p{margin:.6rem 0 0; font-size:.95rem; color:var(--k-text);}
.mw-modern .mw-svc__ans a{color:var(--k-brand); font-weight:700;}
.mw-modern a.mw-svc__askme{display:inline-block; margin-top:.7rem; font-weight:700; color:var(--k-brand);}
.theme-dark.mw-modern .mw-svc__group,.theme-dark.mw-modern .mw-svc__more{background:rgba(15,23,42,.9); border-color:rgba(255,255,255,.1);}
.theme-dark.mw-modern .mw-svc__list a,.theme-dark.mw-modern .mw-svc__ask label,.theme-dark.mw-modern .mw-svc__ans p{color:#e5e7eb;}
.theme-dark.mw-modern .mw-svc__list a{border-color:rgba(255,255,255,.1);}
.theme-dark.mw-modern .mw-svc__h,.theme-dark.mw-modern .mw-svc__and,.theme-dark.mw-modern a.mw-svc__askme,.theme-dark.mw-modern .mw-svc__ans a{color:#93c5fd;}

/* the estimate form's optional step 2 (shown on the thank-you) */
.mw-modern .mw-step2__h{margin:1.4rem 0 .3rem; font-size:1.25rem; color:var(--form-label,#1e3c72);}
.mw-modern .mw-step2__p{margin:0 0 1.2rem; color:var(--form-label,#1e3c72); opacity:.8;}
.mw-modern .mw-step2__done{margin:1rem 0 0; font-weight:700; color:var(--form-label,#1e3c72);}
.mw-modern .mw-step2 [hidden]{display:none !important;}
