:root{--navy:#071b33;--blue:#0d5ca8;--blue2:#1374d1;--sky:#eaf5ff;--yellow:#ffd32a;--ink:#10233b;--muted:#5f7084;--line:#dce6ef;--white:#fff;--radius:18px}
html{scroll-behavior:smooth}body{background:#fff;color:var(--ink);font-family:"DM Sans",sans-serif}h1,h2,h3,h4,h5,h6{font-family:"Manrope",sans-serif;letter-spacing:-.03em}p{font-size:16px;line-height:1.7}a{transition:.2s ease}.page-content{padding-top:78px!important}.container{max-width:1180px}.navbar-custom{background:rgba(7,27,51,.97);padding:12px 0!important;box-shadow:0 8px 30px rgba(1,18,35,.12)}.navbar-custom .navbar-brand{height:54px;padding:4px 15px}.navbar-custom .navbar-brand img{height:44px;width:auto}.navbar-custom .nav li a{font:600 14px "DM Sans",sans-serif;letter-spacing:0;text-transform:none;padding:17px 14px}.navbar-custom .nav li a:hover{color:var(--yellow)}.navbar-custom .nav li.nav-cta a{background:var(--yellow);color:var(--navy);border-radius:999px;padding:12px 20px;margin:5px 0 5px 10px}.navbar-custom .nav li.nav-cta a:hover{background:#fff}.navbar-custom .nav li.login a{opacity:.75}.navbar-custom .navbar-toggle{border-radius:8px;margin-top:9px}.eyebrow,.section-kicker{display:block;color:var(--blue2);font:700 13px "DM Sans",sans-serif;letter-spacing:.13em;text-transform:uppercase;margin-bottom:16px}.business-hero{background:linear-gradient(118deg,rgba(5,24,45,.98) 0%,rgba(7,35,66,.92) 54%,rgba(7,35,66,.35)),url('../img/intro2.png') center/cover;color:#fff;padding:100px 0 84px;text-align:left}.business-hero-grid{display:grid;grid-template-columns:1.5fr .78fr;gap:70px;align-items:center}.business-hero .eyebrow{color:#80c2ff}.business-hero h1{font-size:64px;line-height:1.04;margin:0 0 24px;letter-spacing:-.055em}.business-hero h1 span{color:var(--yellow)}.business-hero-copy>p{max-width:670px;color:#dce9f5;font-size:19px}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:34px}.btn-accent{background:var(--yellow);color:var(--navy)!important;border:0;border-radius:999px;font-size:15px;padding:17px 25px;box-shadow:0 10px 30px rgba(255,211,42,.18)}.btn-accent:hover{background:#fff;transform:translateY(-2px)}.btn-accent i{margin-left:8px}.text-link{color:#fff;font-weight:700}.text-link:hover{color:var(--yellow);text-decoration:none}.text-link i{margin-right:7px}.hero-proof{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:24px;padding:32px;backdrop-filter:blur(12px)}.proof-label{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#9dcaef}.hero-proof strong{display:block;font:700 23px/1.35 "Manrope",sans-serif;margin:10px 0}.hero-proof p{font-size:14px;color:#cfdeeb}.proof-points{display:grid;gap:12px;border-top:1px solid rgba(255,255,255,.15);padding-top:20px}.proof-points i{color:var(--yellow);margin-right:10px}.trust-strip{padding:0;background:var(--sky)}.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);min-height:70px;align-items:center;text-align:center;color:var(--navy);font-weight:700}.trust-grid span+span{border-left:1px solid #cbddeb}.trust-grid i{color:var(--blue2);margin-right:9px}.business-trust{background:var(--blue);color:white}.business-trust .trust-grid{color:white}.business-trust .trust-grid span+span{border-color:rgba(255,255,255,.25)}.business-intro,.method-section,.client-section,.process-section{padding:90px 0}.split-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:end;margin-bottom:46px}.split-heading h2,.method-copy h2,.section-header-center h2,.business-cta h2{font-size:42px;line-height:1.15;margin:0}.split-heading>p{color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{position:relative;border:1px solid var(--line);border-radius:var(--radius);padding:34px;min-height:290px;background:#fff;box-shadow:0 14px 40px rgba(25,65,105,.06)}.service-card>i{font-size:25px;color:var(--blue2);background:var(--sky);width:54px;height:54px;border-radius:14px;display:grid;place-items:center}.service-card h3{font-size:20px;margin:28px 0 10px}.service-card p{color:var(--muted);font-size:15px}.service-number{position:absolute;right:24px;top:22px;color:#cdd8e4;font:700 13px "Manrope",sans-serif}.method-section{background:#f4f8fb}.method-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:76px;align-items:center}.method-image{height:500px;position:relative;border-radius:24px;overflow:hidden}.method-image:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 60%,rgba(4,22,41,.65))}.method-image img{width:100%;height:100%;object-fit:cover}.method-image>span{position:absolute;z-index:1;bottom:24px;left:26px;color:#fff;font-weight:700}.method-copy>p{color:var(--muted);margin:22px 0 26px}.check-list{list-style:none;padding:0;margin:0;display:grid;gap:18px}.check-list li{display:grid;grid-template-columns:36px 1fr;gap:12px}.check-list li>i{width:30px;height:30px;border-radius:50%;background:#dff2e8;color:#197545;display:grid;place-items:center}.check-list strong{display:block;font-size:15px}.check-list span{color:var(--muted);font-size:14px}.section-header-center{text-align:center;max-width:720px;margin:0 auto 45px}.section-header-center p{color:var(--muted)}.logo-wall{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.logo-wall>div{height:112px;border:1px solid var(--line);border-radius:14px;display:flex;align-items:center;justify-content:center;background:white;padding:20px}.logo-wall img{max-width:100%;max-height:64px;object-fit:contain;filter:grayscale(1);opacity:.8}.logo-wall .word-logo{text-align:center;color:#3e5064;font:800 13px/1.3 "Manrope",sans-serif;letter-spacing:.03em}.process-section{background:var(--navy);color:white}.process-section .section-kicker{color:#7ec0ff}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.process-grid article{border-top:1px solid #37506a;padding:28px 18px 0 0}.process-grid article>span{color:var(--yellow);font:800 14px "Manrope",sans-serif}.process-grid h3{font-size:20px;margin:18px 0 8px}.process-grid p{color:#aebfce;font-size:15px}.business-cta{padding:72px 0;background:var(--blue);color:white}.business-cta .container{display:flex;align-items:center;justify-content:space-between;gap:40px}.business-cta .section-kicker{color:#a8d5ff}.business-cta p{color:#d7e9f9;margin-bottom:0}.private-hero .eyebrow{color:var(--yellow);font-size:13px}.private-hero .intro-heading{font-size:62px!important;line-height:1.05!important;color:#fff!important}.private-hero .section-subheading{color:#fff}.private-hero .heading-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.private-hero .btn{border-radius:999px}.private-hero .btn:first-child{background:var(--yellow);border-color:var(--yellow);color:var(--navy)}#intro-abonnemang,#intro-engagsputs{padding:84px 0}#intro-abonnemang{background:#f4f8fb}#intro-abonnemang .col-lg-12,#intro-engagsputs .col-lg-12{max-width:820px;float:none;margin:auto}#intro-abonnemang h2,#intro-engagsputs h2{font-size:40px}.text-muted{color:var(--muted);padding:0}.text-medium{font-size:17px}.btn-primary{border-radius:999px;background:var(--blue);border-color:var(--blue)}.btn-primary:hover{background:var(--navy);border-color:var(--navy)}#gallery .body{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;padding:0 10px}#gallery .body img{width:100%;height:250px;object-fit:cover;border-radius:12px}.compact-support{padding:55px 0}.compact-support .gallery img{max-height:80px}footer{background:#06172b;padding:65px 0 30px;text-align:left}footer .footer-lead{border-bottom:1px solid #26394d;padding-bottom:35px;margin-bottom:34px;display:flex;align-items:center;gap:28px}.footer-brand img{width:100px;height:60px;object-fit:contain}.footer-lead p{color:#9eb0c1;margin:0}footer h2{font-size:14px!important;letter-spacing:.02em}footer a{color:#c7d5e2!important}footer a:hover{color:var(--yellow)!important}footer p{color:#9eb0c1!important;font-size:13px}#todo,#subscription,#one-time-order,#myhome,#myprofile{background:#f3f6f9!important;min-height:75vh;padding:55px max(20px,calc((100vw - 1180px)/2))!important}#todo>h1,#subscription>h2,#one-time-order>h2{font-size:34px;color:var(--navy)}#todo ul li,#subscription ul li{border:1px solid var(--line)!important;border-radius:14px!important;box-shadow:0 8px 25px rgba(20,55,90,.06)!important}#todo ul li.header,#subscription ul li.header{background:var(--navy)!important;color:#fff!important;border-radius:10px!important}
@media(max-width:991px){.business-hero-grid,.split-heading,.method-grid{grid-template-columns:1fr}.business-hero-grid{gap:40px}.business-hero h1{font-size:50px}.method-image{height:390px}.logo-wall{grid-template-columns:repeat(3,1fr)}.service-grid{grid-template-columns:1fr}.service-card{min-height:0}.split-heading{gap:20px}.page-content{padding-top:64px!important}}
@media(max-width:767px){.page-content{padding-top:64px!important}.navbar-custom .navbar-brand img{height:38px}.navbar-custom .navbar-collapse{background:var(--navy);border:0}.navbar-custom .nav li.nav-cta a{margin:7px 15px 15px}.business-hero{padding:64px 0}.business-hero h1,.private-hero .intro-heading{font-size:39px!important}.business-hero-copy>p{font-size:17px}.hero-actions{align-items:flex-start;flex-direction:column}.hero-proof{padding:24px}.trust-grid{grid-template-columns:1fr;padding:10px 0}.trust-grid span{padding:10px}.trust-grid span+span{border-left:0}.business-intro,.method-section,.client-section,.process-section{padding:65px 0}.split-heading h2,.method-copy h2,.section-header-center h2,.business-cta h2{font-size:32px}.method-grid{gap:38px}.method-image{height:320px}.logo-wall{grid-template-columns:repeat(2,1fr)}.logo-wall>div{height:96px}.process-grid{grid-template-columns:1fr}.business-cta .container{align-items:flex-start;flex-direction:column}.private-hero .intro-text{padding-top:70px!important}.private-hero .heading-actions{flex-direction:column}.private-hero .heading-actions a{width:100%;margin:0!important}#gallery .body{grid-template-columns:repeat(2,1fr)}#gallery .body img{height:210px}footer .footer-lead{align-items:flex-start;flex-direction:column}}

/* Internal staff navigation and schedule */
.staff-nav .seb-menu-toggle{display:none}
.staff-tabs a i{transition:transform .2s ease}
.staff-nav.mega-is-open .staff-tabs a i{transform:rotate(180deg)}
#todo.staff-schedule{max-width:none!important;padding-top:48px!important}
#todo .staff-page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin:0 0 30px;padding:0;background:none!important;color:inherit;text-align:left}
#todo .staff-page-heading h1{margin:0;color:#153a61;font:750 36px/1.1 "Manrope",sans-serif;text-align:left}
#todo .staff-page-heading p{margin:8px 0 0;color:#687b8e;font-size:15px}
#todo .schedule-range{display:flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid #d7e2ec;border-radius:8px;background:#fff;color:#456078;font-size:13px;font-weight:700}
#todo .schedule-title{margin:0 0 16px;color:#172d44;font-size:25px}
#todo .schedule-list{display:grid;gap:14px;margin:0;padding:0}
#todo .schedule-day{margin:20px 0 0!important;padding:13px 18px!important;border:0!important;border-radius:9px!important;background:#153f73!important;color:#fff!important;font:700 16px "Manrope",sans-serif!important;box-shadow:none!important}
#todo .schedule-job{display:grid;grid-template-columns:100px minmax(180px,.8fr) minmax(260px,1.4fr) auto;grid-template-areas:"time service details actions";align-items:center;gap:22px;min-height:126px;margin:0!important;padding:22px 24px!important;border:1px solid #d9e4ed!important;border-radius:12px!important;background:#fff!important;box-shadow:0 7px 20px rgba(16,52,87,.055)!important}
#todo .job-time{grid-area:time;align-self:start;color:#163b61;font-size:18px;font-weight:800}
#todo .job-time i{margin-right:7px;color:#186bcc;font-size:15px}
#todo .job-service{grid-area:service;align-self:start}
#todo .job-service strong{display:block;color:#162f49;font:700 16px/1.35 "Manrope",sans-serif}
#todo .job-service span{margin-top:6px;color:#728397;font-size:12px}
#todo .job-details{grid-area:details;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 22px;color:#51677b;font-size:13px}
#todo .job-details>span,#todo .job-details address{display:block;width:auto;margin:0;font:500 13px/1.55 "DM Sans",sans-serif}
#todo .job-details i{width:18px;color:#186bcc;text-align:center}
#todo .job-details a{color:#294f73}
#todo .job-note{grid-column:1/-1;padding-top:7px;border-top:1px solid #edf1f5;color:#526b83}
#todo .job-actions{grid-area:actions;display:flex!important;align-items:center;justify-content:flex-end;gap:8px;width:auto!important}
#todo .job-actions a.button{display:grid!important;float:none!important;place-items:center;width:42px;height:42px;margin:0!important;padding:0!important;border:1px solid #cbdceb!important;border-radius:8px!important;background:#fff!important;color:#1767bd!important}
#todo .job-actions a.button:hover{background:#1767bd!important;color:#fff!important}
#todo .job-actions a.readycheck-job{background:#1767bd!important;color:#fff!important}
#todo .schedule-empty{padding:50px;border:1px dashed #cad9e6;border-radius:12px;background:#fff;color:#64798d;text-align:center}
@media(max-width:991px){
  #todo .schedule-job{grid-template-columns:90px 1fr auto;grid-template-areas:"time service actions" "details details details"}
}
@media(max-width:767px){
  .staff-nav .seb-menu-toggle{display:none}
  .staff-tabs a i{display:inline-block!important}
  #todo.staff-schedule{padding:28px 16px 50px!important}
  #todo .staff-page-heading{align-items:flex-start;flex-direction:column;margin-bottom:24px}
  #todo .staff-page-heading h1{font-size:29px}
  #todo .schedule-job{grid-template-columns:1fr auto;grid-template-areas:"time actions" "service service" "details details";gap:14px;padding:18px!important}
  #todo .job-details{grid-template-columns:1fr}
  #todo .job-note{grid-column:auto}
}

/* Unified signed-in portal */
#todo .job-time{display:flex;align-items:center;gap:8px}
#todo .job-time i,#todo .job-time svg{flex:0 0 auto;margin:0!important}
.client-tabs a i{transition:transform .2s ease}
.client-nav.mega-is-open .client-tabs a i{transform:rotate(180deg)}
.client-nav~.page-content{padding-top:78px!important}

/* Admin order and subscription lists */
#subscription.admin-list{min-height:calc(100vh - 78px);padding:46px max(22px,calc((100vw - 1180px)/2)) 80px!important;background:#f3f6f9!important}
#subscription.admin-list>h2{clear:both;display:block;width:100%;margin:34px 0 18px;color:#173a60;font-size:30px;line-height:1.2}
#subscription.admin-list>h2:first-of-type{margin-top:0}
#subscription.admin-list>ul{display:grid;gap:16px;margin:0;padding:0;list-style:none}
#subscription.admin-list>ul>li{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 26px;min-height:0;margin:0!important;padding:24px!important;border:1px solid #d6e2ec!important;border-radius:12px!important;background:#fff!important;box-shadow:0 8px 22px rgba(21,59,96,.055)!important;color:#233c55}
#subscription.admin-list>ul>li.header{display:block;min-height:0;padding:12px 17px!important;border:0!important;background:#173f70!important;color:#fff!important;font:750 15px "Manrope",sans-serif}
#subscription.admin-list>ul>li>span,#subscription.admin-list>ul>li>address{display:block!important;width:auto!important;margin:0!important;color:#526a80;font:500 13px/1.55 "DM Sans",sans-serif}
#subscription.admin-list>ul>li>span i,#subscription.admin-list>ul>li>span svg,#subscription.admin-list>ul>li>address i,#subscription.admin-list>ul>li>address svg{width:17px;margin-right:7px;color:#176bc4;text-align:center}
#subscription.admin-list>ul>li>address{grid-row:span 2;padding:12px 14px!important;border:1px solid #e0e8ef;border-radius:8px;background:#f7f9fb;font-style:normal}
#subscription.admin-list>ul>li>address span{display:block;margin-bottom:4px}
#subscription.admin-list>ul>li>address .name{margin-bottom:7px;color:#203d59;font-weight:750}
#subscription.admin-list>ul>li>address .zip_code,#subscription.admin-list>ul>li>address .area{padding-left:24px}
#subscription.admin-list .no-sync,#subscription.admin-list .synced{grid-column:1/-1;padding-bottom:10px;border-bottom:1px solid #e7edf2;font-weight:750!important}
#subscription.admin-list .no-sync{color:#c84e4e!important}.admin-list .synced{color:#267553!important}
#subscription.admin-list .comment{grid-column:1/-1;padding:12px!important;border-radius:7px;background:#f4f7fa;color:#405a72!important}
#subscription.admin-list .select-date{grid-column:1/-1;display:flex!important;flex-wrap:wrap;gap:8px;min-height:0!important;margin:4px 0!important}
#subscription.admin-list .select-date a{float:none!important;margin:0!important;padding:9px 12px!important;border:1px solid #ccd8e2;border-radius:6px!important;background:#f3f6f9!important;color:#304b64!important}
#subscription.admin-list .tool{grid-column:1/-1;display:flex!important;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;width:auto!important;margin:8px 0 0!important}
#subscription.admin-list .tool .tool{display:contents!important}
#subscription.admin-list a.button{float:none!important;width:auto!important;margin:0!important;padding:10px 13px!important;border:1px solid #176bc4!important;border-radius:7px!important;background:#fff!important;color:#176bc4!important;font:700 13px "DM Sans",sans-serif!important}
#subscription.admin-list a.button:hover{background:#176bc4!important;color:#fff!important}
#subscription.admin-list a.cancel{border-color:#d26161!important;color:#c54f4f!important}
#subscription.admin-list a.cancel:hover{background:#c54f4f!important;color:#fff!important}
#subscription.admin-list>ul>li>a.upload-image{position:absolute;right:24px;bottom:24px;float:none!important;margin:0!important}
#subscription.admin-list #search{display:inline-block;width:calc(100% - 150px);height:48px;margin:0 8px 20px 0;padding:0 15px;border:1px solid #c8d6e2;border-radius:8px;background:#fff;outline:none}
#subscription.admin-list #search:focus{border-color:#176bc4;box-shadow:0 0 0 3px rgba(23,107,196,.1)}
#subscription.admin-list #search_button{display:inline-flex;float:none!important;align-items:center;justify-content:center;width:138px;height:48px;margin:0 0 20px!important;border-radius:8px!important}

/* Image and window dialogs */
#upload-image,#windows{position:fixed!important;z-index:11000;inset:0!important;display:flex;align-items:center;justify-content:center;width:auto!important;padding:24px;background:rgba(7,27,51,.72);backdrop-filter:blur(5px)}
#upload-image div.body,#windows div.body{position:relative;width:min(880px,100%)!important;max-height:min(760px,calc(100vh - 48px));min-height:0!important;margin:0!important;padding:30px!important;overflow:auto;border:1px solid rgba(255,255,255,.45);border-radius:14px!important;background:#fff!important;box-shadow:0 30px 80px rgba(0,15,35,.3)}
#upload-image h2,#windows h2{margin:0 52px 22px 0;color:#173a60!important;font-size:25px}
#upload-image div a.close-window,#windows div a.close-window{position:absolute;top:22px;right:22px;display:grid;float:none!important;place-items:center;width:38px;height:38px;margin:0!important;padding:0!important;border:1px solid #cfdae4;border-radius:50%;background:#fff!important;color:#354f68!important}
#upload-image .file-upload-row{display:flex;align-items:center;gap:10px;margin-bottom:18px;padding:16px;border:1px dashed #bdcedd;border-radius:9px;background:#f5f8fb}
#upload-image div input{margin:0!important;min-width:0;flex:1}
#upload-image div a.upload{white-space:nowrap;background:#176bc4!important}
#upload-image div ul{min-height:0;max-height:480px;margin:0;padding:0!important;overflow:auto}
#upload-image ul li{display:grid!important;grid-template-columns:minmax(180px,2fr) 80px 135px minmax(130px,1fr);align-items:center;gap:14px;padding:11px 8px!important;border-bottom:1px solid #e2e9ef!important;color:#50677c;font-size:13px}
#upload-image ul li.header{border-bottom:2px solid #173a60!important;color:#203b55}
#upload-image ul li.image{display:block!important;padding:14px 8px!important}
#upload-image div ul li img{max-width:100%;max-height:320px;border-radius:8px;object-fit:contain}
#upload-image ul li span{display:block!important;width:auto!important;margin:0!important;overflow-wrap:anywhere}
#upload-image .file-gallery{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;align-items:start;padding:2px!important}
#upload-image .file-gallery .file-card{display:flex!important;min-width:0;overflow:hidden;padding:0!important;border:1px solid #d8e3ec!important;border-radius:10px!important;background:#fff;box-shadow:0 5px 16px rgba(18,55,89,.06);flex-direction:column}
#upload-image .file-gallery .file-preview{display:grid;place-items:center;width:100%;height:190px;overflow:hidden;background:#edf3f8;color:#6d8194;font-size:38px}
#upload-image .file-gallery .file-preview img{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;border-radius:0}
#upload-image .file-gallery .file-meta{display:grid;gap:6px;width:100%;padding:13px 14px;color:#667a8d;font-size:11px}
#upload-image .file-gallery .file-name{min-width:0;overflow:hidden;color:#21425f;font-size:13px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}
#upload-image .file-gallery .file-meta span{display:flex!important;align-items:center;gap:6px;color:#667a8d}
#upload-image .file-gallery .file-meta span>i,#upload-image .file-gallery .file-meta span>svg{width:13px;color:#176bc4}
#upload-image .file-gallery .user{padding-top:8px;border-top:1px solid #e7edf2}
#upload-image .file-gallery .user .delete{display:grid!important;place-items:center;width:27px;height:27px;margin-left:auto;border-radius:50%;color:#c94c4c;cursor:pointer}
#upload-image .file-gallery .user .delete:hover{background:#fff0f0;color:#a82e2e}
#windows .scroll-window{max-height:500px!important;border:1px solid #dbe5ed;background:#f7f9fb}

/* Customer Mina sidor */
#todo.client-portal,#myprofile.client-portal,#myhome.client-portal{max-width:1180px;min-height:0;margin:0 auto;padding:42px 0!important;background:transparent!important}
#todo.client-portal{padding-top:58px!important}
.client-portal h1{margin:0 0 8px;color:#173a60;font-size:36px;text-align:left}
.client-portal h2{margin:0 0 22px;color:#173a60;font-size:27px;text-align:left}
.booking-confirmation{display:grid;grid-template-columns:48px 1fr;align-items:center;gap:17px;margin:0 0 28px;padding:20px 22px;border:1px solid #a9d8bc;border-left:5px solid #258452;border-radius:10px;background:#edf8f1;box-shadow:0 7px 20px rgba(25,112,68,.08);color:#1e5237}
.booking-confirmation-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#258452;color:#fff;font-size:18px}
.booking-confirmation strong{display:block;margin-bottom:4px;color:#17482f;font:800 18px/1.3 "Manrope",sans-serif}
.booking-confirmation p{margin:0;color:#426653;font-size:14px;line-height:1.55}
#todo.client-portal>ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 24px;padding:0;list-style:none}
#todo.client-portal>ul>li{display:grid;align-content:start;gap:8px;height:auto!important;min-height:0;margin:0!important;padding:22px!important;border:1px solid #d6e2ec!important;border-radius:12px!important;background:#fff!important;box-shadow:0 8px 22px rgba(21,59,96,.05)!important}
#todo.client-portal>ul>li span{display:flex;width:auto!important;color:#526a80;font-size:14px;line-height:1.55;align-items:flex-start;gap:8px}
#todo.client-portal>ul>li span i,#todo.client-portal>ul>li span svg{flex:0 0 17px;margin-top:3px;color:#176bc4}
#todo.client-portal .booking-card-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:15px;border-bottom:1px solid #e5ecf2}
#todo.client-portal>ul>li .service{margin:0;color:#193c60;font:750 18px "Manrope",sans-serif}
#todo.client-portal>ul>li .booking-state{flex:0 0 auto;justify-self:start;margin:0;padding:5px 8px;border:1px solid #ead79e;border-radius:6px;background:#fffdf6;color:#795d1e;font-size:9px;font-weight:800;letter-spacing:.025em;line-height:1.2;white-space:nowrap}
#todo.client-portal>ul>li .booking-state i,#todo.client-portal>ul>li .booking-state svg{flex-basis:12px;margin:0;color:#b17d18;font-size:10px}
#todo.client-portal>ul>li .booking-state.is-booked{border-color:#bcdcc9;background:#f5fbf7;color:#236341}
#todo.client-portal>ul>li .booking-state.is-booked i,#todo.client-portal>ul>li .booking-state.is-booked svg{color:#258452}
#todo.client-portal .booking-card-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;padding-top:7px}
#todo.client-portal .booking-card-details>span{padding:9px 10px;border-radius:7px;background:#f7f9fb;color:#496177}
#todo.client-portal .booking-date-options{grid-column:1/-1;padding:11px 12px;border-radius:8px;background:#f4f7fa}
#todo.client-portal .booking-date-options>small{display:block;margin-bottom:8px;color:#6d7f91;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
#todo.client-portal .booking-date-options>div{display:flex;flex-wrap:wrap;gap:8px}
#todo.client-portal .booking-date-options span{display:flex!important;align-items:center;flex:0 0 auto;gap:7px;width:auto!important;padding:8px 10px;border:1px solid #d3e0ea;border-radius:6px;background:#fff;color:#294762;font-size:12px;font-weight:700;line-height:1.25;white-space:nowrap}
#todo.client-portal .booking-date-options span i,#todo.client-portal .booking-date-options span svg{margin:0;color:#176bc4}
#todo.client-portal>ul>li .start_date{white-space:nowrap}
#todo.client-portal>ul>li .price{grid-column:1/-1;margin:0;padding:11px 12px;border-radius:7px;background:#edf4fa;color:#405a71;font-weight:500}
#todo.client-portal>ul>li .price strong{color:#1d3d5c;font-size:15px}
#todo.client-portal>ul>li .booking-comment{grid-column:1/-1;background:#fff;border:1px solid #e1e8ee;color:#526a80}
#todo.client-portal>ul>li .tool{align-self:auto;display:flex!important;justify-content:flex-end;margin-top:13px!important;padding-top:13px;border-top:1px solid #e7edf2}
#todo.client-portal>ul>li .tool a.button{float:none!important;margin:0!important;padding:8px 12px!important;border:1px solid #e0a6a6!important;background:#fff!important;color:#b94343!important;font-size:12px!important}
#todo.client-portal>ul>li .tool a.button:hover{background:#c54f4f!important;color:#fff!important}
#todo.client-portal a.order{display:inline-flex;align-items:center;justify-content:center;float:none;margin:0 8px 8px 0;padding:12px 16px;border-radius:7px;background:#176bc4;color:#fff}
.new-booking-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 30px}
.new-booking-actions>a{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:15px;min-height:92px;padding:18px 20px;border:1px solid #c9dbea;border-radius:11px;background:#fff;color:#1b3e60!important;box-shadow:0 6px 18px rgba(20,63,102,.05);text-decoration:none!important}
.new-booking-actions>a:hover{border-color:#176bc4;background:#f5f9fd!important;box-shadow:0 9px 24px rgba(20,83,143,.1);transform:translateY(-1px)}
.new-booking-icon{display:grid!important;place-items:center;width:48px!important;height:48px;border-radius:10px;background:#e9f3fc;color:#176bc4!important;font-size:18px}
.new-booking-actions>a>span:nth-child(2){display:block!important}.new-booking-actions strong{display:block;color:#173a60;font:800 16px "Manrope",sans-serif}.new-booking-actions small{display:block;margin-top:4px;color:#687d90;font-size:12px}.new-booking-actions>a>i,.new-booking-actions>a>svg{color:#176bc4}
#myprofile.client-portal,#myhome.client-portal{margin-top:18px;padding:30px!important;border:1px solid #d6e2ec;border-radius:14px;background:#fff!important;box-shadow:0 8px 22px rgba(21,59,96,.05)}
#myprofile.client-portal{max-width:1080px;margin-bottom:72px!important;padding:38px 42px!important}
#myhome.client-portal{margin-bottom:72px}
#myprofile.client-portal .profile-heading{display:grid;grid-template-columns:minmax(0,.8fr) minmax(280px,1.2fr);align-items:end;gap:32px;margin-bottom:25px;padding-bottom:22px;border-bottom:1px solid #e1e9f0}
#myprofile.client-portal .profile-heading h2{margin:3px 0 0;color:#173b60;font-size:28px}
#myprofile.client-portal .profile-kicker{color:#176bc4;font-size:10px;font-weight:800;letter-spacing:.12em}
#myprofile.client-portal .profile-heading p{margin:0;color:#61768a;font-size:13px;line-height:1.55}
#myprofile.client-portal p.info{display:none;align-items:center;gap:13px;margin:0 0 22px;padding:14px 16px;border:1px solid #ead496;border-radius:8px;background:#fff9e9;color:#66501d;font-size:12px;line-height:1.45}
#myprofile.client-portal p.info>i,#myprofile.client-portal p.info>svg{flex:0 0 18px;color:#b98012;font-size:17px}
#myprofile.client-portal p.info span{display:block}#myprofile.client-portal p.info strong{display:block;margin-bottom:2px;color:#5a4311;font-size:13px}
#myprofile.client-portal ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 22px;margin:0;padding:0}
#myprofile.client-portal ul li{margin:0}
#myprofile.client-portal ul li:last-child{grid-column:1/-1}
#myprofile.client-portal ul li span.label{display:flex;align-items:center;justify-content:space-between;color:#203c56;font:750 12px "DM Sans",sans-serif}
#myprofile.client-portal ul li span.label em{display:inline-flex;align-items:center;gap:4px;color:#9a6612;font-size:9px;font-style:normal;font-weight:750;letter-spacing:.025em;text-transform:uppercase}
#myprofile.client-portal ul li span.label em i,#myprofile.client-portal ul li span.label em svg{font-size:6px}
#myprofile.client-portal ul li span.label em.optional{color:#7a8b9a}
#myprofile.client-portal ul li input{width:100%;height:45px;margin-top:7px;padding:0 13px;border:1px solid #c7d5e0;border-radius:7px;background:#fff;color:#233e56;font:500 14px "DM Sans",sans-serif}
#myprofile.client-portal ul li input:focus{border-color:#176bc4;outline:0;box-shadow:0 0 0 3px rgba(23,107,196,.1)}
#myprofile.client-portal ul li input.is-invalid{border-color:#cb4b4b;background:#fffafa;box-shadow:0 0 0 3px rgba(203,75,75,.08)}
#myprofile.client-portal .profile-actions{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-top:4px;padding-top:21px;border-top:1px solid #e1e9f0}
#myprofile.client-portal .profile-save-status{margin-right:auto;color:#28704c;font-size:12px;font-weight:700}
#myprofile.client-portal .profile-save-status.is-error{color:#b23b3b}
#myprofile.client-portal .profile-save{display:inline-flex;align-items:center;justify-content:center;gap:8px;float:none;min-width:170px;margin:0;padding:12px 18px;border:0;border-radius:7px;background:#176bc4;color:#fff;font-size:13px;font-weight:800}
#myprofile.client-portal .profile-save:not(:disabled):hover{background:#10579f;box-shadow:0 6px 16px rgba(23,107,196,.2);transform:translateY(-1px)}
#myprofile.client-portal .profile-save:disabled{cursor:not-allowed;background:#d9e1e8;color:#8393a1;box-shadow:none;opacity:1}
#myhome.client-portal form{display:flex;align-items:center;gap:12px;padding:17px;border:1px dashed #bdcedd;border-radius:9px;background:#f5f8fb}
#myhome.client-portal form input{min-width:0;flex:1}
#myhome.client-portal .home-gallery-intro{max-width:680px;margin:-10px 0 20px;color:#65798c;font-size:14px}
#myhome.client-portal .client-upload-zone{flex-wrap:wrap}
#myhome.client-portal .upload-status{flex-basis:100%;color:#4f677d;font-size:12px}
#myhome.client-portal .upload-status.is-error{color:#b83d3d}
#myhome.client-portal .upload.is-loading{opacity:.7;pointer-events:none}
#myhome.client-portal .client-gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:24px;padding:13px 15px;border:1px solid #d8e3ec;border-radius:9px;background:#f7f9fb;color:#607489;font-size:12px}
#myhome.client-portal .client-gallery-toolbar strong{color:#193c5d;font-size:14px}
#myhome.client-portal .client-files-delete-all{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid #dfb2b2;border-radius:6px;background:#fff;color:#ae3e3e;font-size:12px;font-weight:750}
#myhome.client-portal .client-files-delete-all:hover{border-color:#c94b4b;background:#fff2f2;color:#982e2e}
#myhome.client-portal .client-files-delete-all:disabled{cursor:wait;opacity:.6}
#myhome.client-portal .client-file-gallery{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;margin-top:22px;padding:0;list-style:none}
#myhome.client-portal .client-file-card{display:flex!important;min-width:0;overflow:hidden;margin:0!important;padding:0!important;border:1px solid #d8e3ec!important;border-radius:10px!important;background:#fff;box-shadow:0 5px 16px rgba(18,55,89,.06)!important;flex-direction:column}
#myhome.client-portal .client-file-preview{display:grid;place-items:center;width:100%;height:210px;overflow:hidden;background:#edf3f8;color:#6d8194;font-size:38px}
#myhome.client-portal .client-file-preview img{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;border-radius:0}
#myhome.client-portal .client-file-meta{display:grid;grid-template-columns:1fr auto;gap:7px 10px;width:100%;padding:13px 14px;color:#667a8d;font-size:11px}
#myhome.client-portal .client-file-name{grid-column:1/-1;min-width:0;overflow:hidden;color:#21425f;font-size:13px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}
#myhome.client-portal .client-file-meta span{display:flex!important;align-items:center;gap:5px;width:auto!important;color:#667a8d}
#myhome.client-portal .client-file-meta span i,#myhome.client-portal .client-file-meta span svg{color:#176bc4}
#myhome.client-portal .client-file-delete{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:7px;margin-top:5px;padding:9px 11px;border:1px solid #e1b8b8;border-radius:6px;background:#fff;color:#b94343;font-size:12px;font-weight:750}
#myhome.client-portal .client-file-delete:hover{border-color:#c94b4b;background:#fff2f2;color:#9f3030}

@media(max-width:767px){
  .client-nav~.page-content{padding-top:68px!important}.client-nav .nav-account{display:flex;font-size:0}.client-nav .nav-account i,.client-nav .nav-account svg{font-size:16px}.client-tabs a i{display:inline-block!important}
  #subscription.admin-list{padding:28px 14px 60px!important}#subscription.admin-list>ul>li{grid-template-columns:1fr;padding:19px!important}#subscription.admin-list .no-sync,#subscription.admin-list .synced,#subscription.admin-list .comment,#subscription.admin-list .select-date,#subscription.admin-list .tool{grid-column:1}#subscription.admin-list>ul>li>a.upload-image{position:static;justify-self:start;margin-top:8px!important}#subscription.admin-list #search{width:100%;margin-right:0}#subscription.admin-list #search_button{width:100%;margin-bottom:22px!important}
  #upload-image,#windows{align-items:flex-end;padding:0}#upload-image div.body,#windows div.body{max-height:92vh;padding:23px 17px!important;border-radius:14px 14px 0 0!important}#upload-image .file-upload-row{align-items:stretch;flex-direction:column}#upload-image ul li{grid-template-columns:1fr}#upload-image ul li.header{display:none!important}#upload-image .file-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}#upload-image .file-gallery .file-preview{height:150px}
  #todo.client-portal,#myprofile.client-portal,#myhome.client-portal{margin:0 14px;padding:28px 0!important}#todo.client-portal>ul,#myprofile.client-portal ul,.new-booking-actions,.booking-card-details{grid-template-columns:1fr!important}#todo.client-portal .booking-card-header{align-items:flex-start;flex-direction:column}#myprofile.client-portal,#myhome.client-portal{margin-top:14px;padding:22px 17px!important}#myprofile.client-portal .profile-heading{grid-template-columns:1fr;gap:10px}#myprofile.client-portal .profile-actions{align-items:stretch;flex-direction:column}#myprofile.client-portal .profile-save-status{margin:0}#myprofile.client-portal .profile-save{width:100%}#myhome.client-portal{margin-bottom:46px}#myprofile.client-portal ul li:last-child{grid-column:1}#myhome.client-portal form{align-items:stretch;flex-direction:column}#myhome.client-portal .client-file-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}#myhome.client-portal .client-file-preview{height:160px}
  #myhome.client-portal .client-gallery-toolbar{align-items:flex-start;flex-direction:column}#myhome.client-portal .client-files-delete-all{width:100%;justify-content:center}
}

/* Seven-day staff calendar */
#todo .calendar-scroll{margin:0 -2px;padding:2px 2px 18px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-color:#b9cad9 #edf3f8;scrollbar-width:thin}
#todo .calendar-week{display:grid;grid-template-columns:repeat(7,minmax(205px,1fr));gap:10px;min-width:1435px;margin:0;padding:0;list-style:none}
#todo .calendar-day{min-height:540px;overflow:hidden;border:1px solid #d8e3ec;border-radius:12px;background:#f8fafc}
#todo .calendar-day.is-today{border-color:#8dbbe8;box-shadow:0 0 0 2px rgba(24,107,204,.08)}
#todo .calendar-day-heading{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"weekday count" "date month";align-items:end;gap:0 7px;padding:17px 16px 15px;border-bottom:1px solid #dce6ee;background:#fff}
#todo .calendar-day-heading span{grid-area:weekday;width:auto;color:#617489;font:800 11px "DM Sans",sans-serif;letter-spacing:.1em;text-transform:uppercase}
#todo .calendar-day-heading strong{grid-area:date;color:#173a60;font:800 27px/1 "Manrope",sans-serif}
#todo .calendar-day-heading small{grid-area:month;align-self:end;color:#718296;font-size:12px;line-height:1.2}
#todo .calendar-day-heading em{grid-area:count;justify-self:end;align-self:start;display:grid;place-items:center;min-width:23px;height:23px;padding:0 6px;border-radius:999px;background:#edf3f8;color:#50677d;font-size:11px;font-style:normal;font-weight:800}
#todo .calendar-day.is-today .calendar-day-heading{background:#153f73}
#todo .calendar-day.is-today .calendar-day-heading span,#todo .calendar-day.is-today .calendar-day-heading strong,#todo .calendar-day.is-today .calendar-day-heading small{color:#fff}
#todo .calendar-day.is-today .calendar-day-heading em{background:#fff;color:#155da9}
#todo .calendar-day-jobs{display:grid;gap:9px;margin:0;padding:10px;list-style:none}
#todo .calendar-week .schedule-job{display:grid;grid-template-columns:1fr auto;grid-template-areas:"time actions" "service service" "details details";gap:10px;min-height:0;margin:0!important;padding:13px!important;border-radius:9px!important;box-shadow:0 3px 10px rgba(18,55,89,.05)!important}
#todo .calendar-week .job-time{align-self:center;font-size:15px}
#todo .calendar-week .job-service{padding-top:9px;border-top:1px solid #edf2f6}
#todo .calendar-week .job-service strong{font-size:14px}
#todo .calendar-week .job-service span{font-size:11px}
#todo .calendar-week .job-details{display:grid;grid-template-columns:1fr;gap:5px;padding-top:8px;border-top:1px solid #edf2f6;font-size:12px}
#todo .calendar-week .job-details>span,#todo .calendar-week .job-details address{font-size:12px;overflow-wrap:anywhere}
#todo .calendar-week .job-actions{gap:5px}
#todo .calendar-week .job-actions a.button{width:32px;height:32px;border-radius:7px!important;font-size:12px}
#todo .calendar-week .job-actions small{position:absolute;transform:translate(10px,-10px);display:grid;place-items:center;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#e14343;color:#fff;font-size:9px}
#todo .calendar-day-empty{padding:32px 10px;color:#8a99a8;font-size:12px;text-align:center}
@media(max-width:767px){
  #todo .calendar-week{grid-template-columns:repeat(7,260px);min-width:1870px}
  #todo .calendar-day{min-height:440px}
}
.page-content{margin-top:0!important}

/* Brand refinement: retain Gson's established blue and reduce oversized UI */
:root{--navy:#103f78;--blue:#186bcc;--blue2:#186bcc;--yellow:#fed136}
.navbar-custom,.navbar-custom.affix{background:#186bcc!important;box-shadow:0 5px 18px rgba(13,61,116,.18)}
.navbar-custom .nav li.nav-cta a{background:#fff;color:#155daF;border:1px solid rgba(255,255,255,.65);border-radius:8px;padding:10px 16px;margin-left:8px;box-shadow:none}
.navbar-custom .nav li.nav-cta a:hover{background:#f3f8fd;color:#103f78}
.btn,.btn-xl,.btn-primary,.btn-accent{border-radius:8px!important;font-size:14px;padding:12px 18px;font-weight:700;letter-spacing:0;box-shadow:none}
.btn-xl{min-width:0}
.btn-accent{background:#fed136;color:#17385e!important;border:1px solid #fed136}
.btn-accent:hover{background:#f5c61f;border-color:#f5c61f;transform:translateY(-1px)}
.hero-actions{gap:22px;margin-top:28px}
.hero-proof{border-radius:14px;padding:28px;box-shadow:none}
.service-card{border-radius:12px;padding:30px;box-shadow:0 8px 24px rgba(24,107,204,.07)}
.service-card>i{border-radius:10px}
.method-image{border-radius:14px}
.logo-wall>div{border-radius:10px}
.business-trust{background:#186bcc}
.business-cta{background:#186bcc}
.process-section{background:#103f78}
footer{background:#103f78}
.private-hero .btn:first-child{background:#fed136;border-color:#fed136;color:#17385e}
.private-hero .heading-actions{gap:10px}

/* Two-level audience navigation */
@media (min-width:768px){
  .navbar-custom{padding:10px 0!important}
  .navbar-custom .nav-shell{display:flex;align-items:center;min-height:84px}
  .navbar-custom .navbar-header{flex:0 0 auto}
  .navbar-custom .navbar-brand{height:64px;padding:4px 15px}
  .navbar-custom .navbar-brand img{height:56px}
  .navbar-custom .navbar-collapse{display:flex!important;flex:1;flex-direction:column;align-items:flex-end;border:0!important}
  .navbar-custom .subnav{display:flex;align-items:center;margin:3px 0 0}
  .navbar-custom .subnav>li>a{padding:8px 13px}
  .navbar-custom .subnav>li.nav-cta>a{padding:9px 18px;margin:0 0 0 8px}
  .audience-switch{display:inline-flex;align-items:center;padding:3px;background:rgba(10,57,112,.24);border:1px solid rgba(255,255,255,.28);border-radius:9px}
  .audience-switch a{min-width:86px;padding:6px 15px;border-radius:6px;color:#dceaff;font-size:13px;font-weight:700;text-align:center;text-decoration:none}
  .audience-switch a:hover{color:#fff}
  .audience-switch a.active{background:#fff;color:var(--navy);box-shadow:0 4px 12px rgba(0,0,0,.16)}
  .page-content{padding-top:104px!important}
  html{scroll-padding-top:110px}
}
@media (max-width:767px){
  .navbar-custom{min-height:64px;padding:5px 0!important}
  .navbar-custom .navbar-brand{height:54px}
  .navbar-custom .navbar-collapse{padding:15px;border:0;box-shadow:none}
  .audience-switch{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin:4px 0 12px;background:rgba(255,255,255,.09);border-radius:12px}
  .audience-switch a{padding:11px;border-radius:9px;color:#c7d5e2;font-weight:700;text-align:center;text-decoration:none}
  .audience-switch a.active{background:#fff;color:var(--navy)}
  .navbar-custom .subnav{margin:0}
  .navbar-custom .subnav>li>a{padding:12px 10px;border-bottom:1px solid rgba(255,255,255,.09)}
  .navbar-custom .subnav>li:last-child>a{border-bottom:0}
  .page-content{padding-top:64px!important}
  html{scroll-padding-top:70px}
}

/* Spacious brand header and discreet customer portal */
@media (min-width:768px){
  .navbar-custom .nav-shell{min-height:102px;gap:48px}
  .navbar-custom .navbar-header{align-self:stretch;display:flex;align-items:center;min-width:190px;border-right:1px solid rgba(255,255,255,.18);padding-right:34px}
  .navbar-custom .navbar-brand{display:flex;align-items:center;justify-content:flex-start;width:155px;height:82px;padding:0;overflow:visible}
  .navbar-custom .navbar-brand img{width:128px;height:84px;object-fit:contain;transform:scale(1.12)}
  .navbar-custom .navbar-collapse{justify-content:center;gap:7px}
  .navbar-custom .subnav{gap:3px;margin-top:0}
  .navbar-custom .subnav>li>a{padding-left:15px;padding-right:15px}
  .navbar-custom .portal-link{margin-left:9px;border-left:1px solid rgba(255,255,255,.22)}
  .navbar-custom .portal-link>a{font-size:13px;opacity:.88;padding-left:19px!important}
  .page-content{padding-top:122px!important}
  html{scroll-padding-top:128px}
}

/* Quote dialog */
.quote-is-open{overflow:hidden}
.quote-modal{position:fixed;inset:0;z-index:10050;display:none;align-items:center;justify-content:center;padding:28px}
.quote-modal.is-open{display:flex}
.quote-backdrop{position:absolute;inset:0;background:rgba(6,25,48,.72);backdrop-filter:blur(5px)}
.quote-panel{position:relative;z-index:1;display:grid;grid-template-columns:.72fr 1.28fr;width:min(960px,100%);max-height:calc(100vh - 56px);overflow:auto;background:#fff;border-radius:14px;box-shadow:0 28px 80px rgba(2,20,42,.3)}
.quote-close{position:absolute;right:18px;top:18px;z-index:2;width:38px;height:38px;border:1px solid #dce6ef;border-radius:8px;background:#fff;color:#36516f;font-size:18px}
.quote-close:hover{background:#f3f7fb;color:#17385e}
.quote-intro{padding:46px 38px;background:#f0f6fc;border-right:1px solid #dbe7f1}
.quote-intro h2{font-size:31px;line-height:1.15;margin:0 0 16px;color:#17385e}
.quote-intro>p{font-size:15px;color:#5f7084}
.quote-promise{display:grid;gap:13px;margin-top:30px;padding-top:24px;border-top:1px solid #cfdeeb;color:#385572;font-size:14px;font-weight:600}
.quote-promise i{margin-right:9px;color:#186bcc}
.quote-form{padding:46px 42px 34px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px 18px}
.quote-form label{display:block;margin:0 0 17px;color:#243b55;font-size:13px;font-weight:700}
.quote-form label>span{color:#186bcc;margin-left:3px}
.quote-form input[type="text"],.quote-form input[type="email"],.quote-form input[type="tel"],.quote-form select,.quote-form textarea{display:block;width:100%;margin-top:7px;padding:11px 12px;border:1px solid #cddbe8;border-radius:7px;background:#fff;color:#142b45;font:400 15px "DM Sans",sans-serif;box-shadow:none;transition:border-color .2s,box-shadow .2s}
.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{outline:0;border-color:#186bcc;box-shadow:0 0 0 3px rgba(24,107,204,.12)}
.quote-form textarea{resize:vertical;min-height:104px}
.quote-consent{display:flex!important;align-items:flex-start;gap:10px;font-weight:400!important;color:#617286!important;line-height:1.45}
.quote-consent input{margin-top:3px}
.quote-consent span{color:inherit!important;margin:0!important}
.quote-form-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid #e1e9f0;padding-top:20px}
.quote-status{flex:1;margin:0;font-size:14px;line-height:1.45}
.quote-status.is-success{color:#157044;font-weight:700}
.quote-status.is-error{color:#b32929;font-weight:700}
.quote-submit{white-space:nowrap}
.quote-submit:disabled{opacity:.65;cursor:wait}
.quote-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:767px){
  .quote-modal{inset:68px 0 0;z-index:1029;align-items:stretch;padding:0}
  .quote-backdrop{background:rgba(6,25,48,.58);backdrop-filter:blur(3px)}
  .quote-panel{display:block;width:100%;height:100%;max-height:none;overscroll-behavior:contain;border-radius:0}
  .quote-close{position:absolute;right:14px;top:14px;margin:0}
  .quote-intro{padding:27px 58px 22px 20px;border-right:0;border-bottom:1px solid #dbe7f1}
  .quote-intro h2{font-size:26px;padding-right:35px}
  .quote-promise{display:none}
  .quote-form{padding:24px 20px calc(30px + env(safe-area-inset-bottom))}
  .form-grid{grid-template-columns:1fr;gap:0}
  .quote-form-footer{align-items:stretch;flex-direction:column}
  .quote-submit{width:100%}
  .navbar-custom .portal-link{margin-top:5px}
}

/* Compact booking journey */
section#order.private-order-page .step-4,
section#order.private-order-page .step-5{max-width:920px}
section#order.private-order-page .step-explainer{max-width:620px;margin:-5px auto 28px;padding:0!important;text-align:center!important;font-size:15px}
section#order.private-order-page #calendar{display:block;overflow:hidden;margin:0 0 30px;padding:0}
section#order.private-order-page #calendar .date-picker{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:12px;float:none!important;width:100%!important;padding:0!important}
section#order.private-order-page #calendar .date-picker span.date{display:flex!important;float:none!important;min-width:0!important;min-height:150px;margin:0!important;padding:18px 12px!important;border:1px solid #c7d5e1!important;border-radius:10px!important;background:#fff!important;color:#173650!important;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(16,52,87,.04);cursor:pointer;transition:.18s ease}
section#order.private-order-page #calendar .date-picker span.date:hover{border-color:#186bcc!important;background:#f1f7fd!important;transform:translateY(-2px)}
section#order.private-order-page #calendar .date-picker span.date.used{border-color:#186bcc!important;background:#186bcc!important;color:#fff!important;box-shadow:0 8px 22px rgba(24,107,204,.22)}
section#order.private-order-page #calendar .date-picker span.date strong{font-size:36px!important;line-height:1!important;margin:8px 0!important}
section#order.private-order-page #calendar .date-picker span.date em{font-size:14px}
section#order.private-order-page #calendar h2{margin:0 0 20px!important;font-size:22px!important}
section#order.private-order-page #calendar p{padding:0!important}
.booking-option-block{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;margin-top:16px;padding:24px 0;border-top:1px solid #e1e8ee;text-align:left}
.booking-option-block h2{margin:0 0 5px!important;color:#173650;font-size:19px!important;text-align:left!important}.booking-option-block p{margin:0;padding:0!important;text-align:left!important;font-size:14px}
.radio-cards{display:flex;gap:8px}.radio-cards label{margin:0;cursor:pointer}.radio-cards input{position:absolute;opacity:0;pointer-events:none}.radio-cards span{display:grid;place-items:center;min-width:74px;height:44px;border:1px solid #b9cad8;border-radius:7px;background:#fff;color:#29445e;font-weight:700;transition:.18s ease}.radio-cards input:checked+span{border-color:#186bcc;background:#186bcc;color:#fff;box-shadow:0 5px 14px rgba(24,107,204,.18)}.radio-cards input:focus-visible+span{outline:3px solid rgba(24,107,204,.25);outline-offset:2px}
section#order.private-order-page .balkong_altan_form{margin:0 0 8px;padding:22px;border:1px solid #d6e2ec;border-radius:10px;background:#f6f9fc;text-align:left}
section#order.private-order-page .balkong_altan_form>p{margin:0 0 16px;padding:0!important;text-align:left!important;font-size:14px}
section#order.private-order-page .balkong_altan_form .input-group{margin:9px 0!important}
section#order.private-order-page .step-4>a.button{display:flex!important;align-items:center;justify-content:center;max-width:300px;height:50px;margin:26px auto 0!important;border-radius:7px!important}
.date-selection-status{margin:26px 0 0;padding:17px 18px;border:1px solid #d6e2ec;border-radius:9px;background:#f6f9fc;text-align:left}
.date-selection-label{display:block;margin-bottom:10px;color:#63798d;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.date-selection-list{display:flex;flex-wrap:wrap;gap:8px}
.date-selection-empty{color:#788a9b;font-size:13px}
.date-selection-chip{display:inline-flex;align-items:center;gap:7px;padding:9px 11px;border:1px solid #bcd3e8;border-radius:7px;background:#fff;color:#244763;font-size:12px;font-weight:700;white-space:nowrap}
.date-selection-chip i,.date-selection-chip svg{color:#186bcc}
section#order.private-order-page .step-4>.price-trigger.is-disabled{border-color:#d2dce5!important;background:#d2dce5!important;color:#718394!important;box-shadow:none!important;cursor:not-allowed!important;transform:none!important}
.booking-summary{display:grid;grid-template-columns:1.25fr .75fr;gap:14px;text-align:left}.booking-summary>div{min-height:180px;padding:26px;border:1px solid #d7e2ec;border-radius:11px;background:#f7f9fb}.booking-summary .price-summary{border-color:#164f8f;background:#123d6e;color:#fff}.summary-label{display:block;margin-bottom:7px;color:#186bcc;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.price-summary .summary-label{color:#9fd0ff}.booking-summary h2{margin:0 0 14px!important;font-size:22px!important;text-align:left!important}.price-summary h2{color:#fff!important}.booking-summary p{margin:0;padding:0!important;text-align:left!important;font-size:14px}.price-summary p{color:#d8e8f6!important}.price-summary p strong{display:block;margin-top:8px;color:#fff;font:750 28px "Manrope",sans-serif}
section#order.private-order-page .confirmation-note{display:flex;gap:10px;align-items:flex-start;margin:14px 0 26px;padding:14px 16px!important;border-radius:8px;background:#eaf3fc;color:#365a7b!important;text-align:left!important;font-size:13px}.confirmation-note i{margin-top:4px;color:#186bcc}
.booking-contact-fields{display:grid;gap:18px;max-width:620px;margin:0 auto;text-align:left}.booking-field label{display:block;margin-bottom:7px;color:#193650;font-size:14px;font-weight:700}.booking-field label small{color:#77899a;font-weight:500}.booking-field input,.booking-field textarea{display:block;width:100%;border:1px solid #bdcddd;border-radius:8px;background:#fff;color:#213b54;font-size:15px;outline:none}.booking-field input{height:50px;padding:0 15px}.booking-field textarea{min-height:125px;padding:14px;resize:vertical}.booking-field input:focus,.booking-field textarea:focus{border-color:#186bcc;box-shadow:0 0 0 3px rgba(24,107,204,.1)}
.booking-field .field-help{display:block;margin-top:7px;color:#718395;font-size:12px}
/* Keep the contact step inside narrow mobile cards despite legacy fixed widths. */
.booking-contact-fields{width:100%}
.booking-contact-fields .booking-field{box-sizing:border-box;min-width:0;width:100%}
section#order.private-order-page .booking-contact-fields .mobilnummer{box-sizing:border-box;width:100%;padding:0;text-align:left}
section#order.private-order-page .booking-field input,
section#order.private-order-page .booking-field textarea{box-sizing:border-box;width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important}
section#order.private-order-page .step-5>a.button{display:flex!important;align-items:center;justify-content:center;max-width:620px;height:50px;margin:22px auto 0!important;border-radius:7px!important}
section#order.private-order-page .step-5>a.button.is-disabled{border-color:#c8d2dc!important;background:#c8d2dc!important;color:#718293!important;box-shadow:none!important;cursor:not-allowed!important;pointer-events:auto;transform:none!important}

section#order.private-order-page .step-3.subscription{max-width:780px;text-align:left}
section#order.private-order-page .step-3.subscription>h2{text-align:center}
section#order.private-order-page .step-3.subscription>img{display:block;width:auto!important;max-width:300px!important;max-height:105px!important;margin:27px auto 12px!important;object-fit:contain}
section#order.private-order-page .step-3.subscription p.description{margin:22px 0 10px!important;padding:18px 0 0!important;border-top:1px solid #e1e8ee;color:#536b81!important;font-size:14px!important;font-style:normal!important;font-weight:700;text-align:left!important}
section#order.private-order-page .step-3.subscription>img+p.description{margin-top:0!important;padding-top:0!important;border-top:0}
section#order.private-order-page .step-3.subscription .input-group{display:grid!important;grid-template-columns:minmax(210px,.9fr) 1.1fr;max-width:none!important;margin:8px 0!important;border:1px solid #cbd8e3;border-radius:8px;overflow:hidden;background:#fff}
section#order.private-order-page .step-3.subscription .input-group-addon{display:flex!important;align-items:center;justify-content:flex-start;width:auto!important;min-width:0!important;padding:0 16px!important;border:0!important;border-right:1px solid #d6e0e8!important;border-radius:0!important;background:#edf4fa!important;color:#29445e!important;font-size:14px!important;font-weight:700!important;text-align:left!important}
section#order.private-order-page .step-3.subscription .form-control{width:100%!important;height:48px!important;padding:0 15px!important;border:0!important;border-radius:0!important;box-shadow:none!important;font-size:15px;text-align:left}
section#order.private-order-page .step-3.subscription p.area{margin:22px 0 0;padding:0!important;text-align:left!important}.step-3.subscription p.price{padding:18px!important;border-radius:9px;background:#edf5fc;text-align:left!important}
section#order.private-order-page .step-3.subscription>a.button{display:flex!important;align-items:center;justify-content:center;max-width:300px;height:50px;margin:22px auto 0!important;border-radius:7px!important}

@media(max-width:767px){
  section#order.private-order-page #calendar .date-picker{grid-template-columns:repeat(2,minmax(0,1fr))}
  section#order.private-order-page #calendar .date-picker span.date{min-height:130px}
  .booking-option-block,.booking-summary{grid-template-columns:1fr}.radio-cards{width:100%}.radio-cards label{flex:1}.radio-cards span{width:100%}
  .booking-summary>div{min-height:0;padding:21px}.booking-contact-fields{gap:15px}
  section#order.private-order-page{padding-left:12px;padding-right:12px}
  section#order.private-order-page .step:not(.order-intro){box-sizing:border-box;width:100%;padding:22px 16px}
  section#order.private-order-page .step-5>a.button{box-sizing:border-box;width:100%;max-width:100%}
  section#order.private-order-page .step-3.subscription .input-group{grid-template-columns:1fr}.step-3.subscription .input-group-addon{min-height:42px;border-right:0!important;border-bottom:1px solid #d6e0e8!important}
}

/* Business audiences, lower-page contrast and footer readability */
.business-hero{background-image:linear-gradient(118deg,rgba(5,24,45,.98) 0%,rgba(7,35,66,.92) 54%,rgba(7,35,66,.35)),url('../img/work/high-access-window.jpg')}
.audience-heading:before,.audience-heading:after,.audience-grid:before,.audience-grid:after,.service-grid:before,.service-grid:after,.method-grid:before,.method-grid:after,.process-grid:before,.process-grid:after{display:none!important;content:none!important}
.audience-heading{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(320px,.75fr);gap:80px;align-items:end;margin-bottom:42px}
.audience-heading h2{margin:0;color:#102a47;font-size:42px;line-height:1.14}
.audience-heading>p{margin:0;color:#52677b;font-size:17px}
.audience-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.audience-card{display:grid;grid-template-columns:43% 57%;min-height:360px;overflow:hidden;border:1px solid #d9e3ec;border-radius:14px;background:#fff;box-shadow:0 12px 32px rgba(17,58,98,.08)}
.audience-card>img{width:100%;height:100%;min-height:360px;object-fit:cover}
.audience-card:nth-child(1)>img{object-position:center 68%}
.audience-card:nth-child(2)>img{object-position:center 60%}
.audience-card:nth-child(3)>img{object-position:center 52%}
.audience-card:nth-child(4)>img{object-position:center 56%}
.audience-card>div{padding:30px 28px}
.audience-card>div>span{color:#186bcc;font-size:12px;font-weight:800;letter-spacing:.12em}
.audience-card h3{margin:12px 0 10px;color:#102a47;font-size:21px;line-height:1.25}
.audience-card p{margin:0;color:#566b7f;font-size:14px;line-height:1.6}
.audience-card ul{margin:18px 0 0;padding:16px 0 0;border-top:1px solid #e4ebf1;list-style:none}
.audience-card li{position:relative;margin-top:8px;padding-left:17px;color:#31485e;font-size:13px;font-weight:700}
.audience-card li:before{content:"";position:absolute;left:0;top:7px;width:6px;height:6px;border-radius:50%;background:#186bcc}
.reference-groups{display:grid;gap:54px}
.reference-group{display:grid;grid-template-columns:280px minmax(0,1fr);gap:44px;padding-top:30px;border-top:1px solid #d9e3ec}
.reference-group-heading{display:flex;gap:16px}
.reference-group-heading>span{color:#186bcc;font-size:12px;font-weight:800;letter-spacing:.12em}
.reference-group-heading h3{margin:0 0 10px;color:#102a47;font-size:21px}
.reference-group-heading p{margin:0;color:#64778a;font-size:14px;line-height:1.55}
.reference-group .logo-wall{grid-template-columns:repeat(4,minmax(0,1fr))}
.reference-group .logo-wall>div{height:100px}
.reference-group .logo-wall img{max-width:88%;max-height:62px;filter:none;opacity:1}
.reference-group .logo-wall .jacks-logo img{width:82%;max-width:230px;max-height:68px;filter:brightness(0)}
.reference-group .property-logos{grid-template-columns:repeat(2,minmax(180px,260px));justify-content:start}
.property-wordmark{display:inline-flex;align-items:center;justify-content:center;color:#111;line-height:1;white-space:nowrap}
.vasakronan-wordmark{font:700 25px/1 "DM Sans",sans-serif;letter-spacing:-.055em;text-transform:lowercase}
.alecta-wordmark{flex-direction:column;align-items:flex-start;color:#184a87;text-align:left}
.alecta-wordmark strong{font:800 27px/1 "Manrope",sans-serif;letter-spacing:-.04em}
.alecta-wordmark small{margin-top:5px;font:800 8px/1 "DM Sans",sans-serif;letter-spacing:.2em}
.restaurant-reference-photos{grid-column:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
.restaurant-reference-photos figure{position:relative;height:280px;margin:0;overflow:hidden;border-radius:11px;background:#102f55}
.restaurant-reference-photos img{width:100%;height:100%;object-fit:cover}
.restaurant-reference-photos figure:first-child img{object-position:center 44%}
.restaurant-reference-photos figure:last-child img{object-position:center 48%}
.restaurant-reference-photos figure:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(5,25,45,.88))}
.restaurant-reference-photos figcaption{position:absolute;z-index:1;left:20px;right:20px;bottom:18px;color:#fff}
.restaurant-reference-photos figcaption strong,.restaurant-reference-photos figcaption span{display:block}.restaurant-reference-photos figcaption strong{font-size:16px}.restaurant-reference-photos figcaption span{margin-top:2px;color:#d7e5f1;font-size:12px}
.process-section{background:#0d3f78!important;color:#fff!important}
.process-section .section-header-center h2,.process-section h3{color:#fff!important}
.process-section .section-kicker{color:#9fd0ff!important}
.process-grid article{border-top-color:rgba(255,255,255,.32)!important}
.process-grid p{color:#d5e4f2!important}
.business-cta{background:#186bcc!important;color:#fff!important}
.business-cta h2{color:#fff!important}
.business-cta .section-kicker{color:#c9e4ff!important}
.business-cta p{color:#edf6ff!important}
footer{background:#082e5a!important;color:#fff!important}
footer .footer-lead{border-bottom-color:rgba(255,255,255,.2)!important}
footer .footer-lead p,footer p,footer .text-muted{color:#d5e3f0!important}
footer h2{margin:0 0 16px!important;color:#fff!important;font-size:15px!important;font-weight:800!important}
footer .row>div>span{display:grid;gap:9px}
footer a{color:#e4eef7!important}
footer a:hover{color:#fff!important;text-decoration:underline}
.footer-contact-list{display:grid;gap:0;margin-top:2px}
.footer-contact-list>a,.footer-contact-list>div{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.14);color:#eef6fc!important;font-size:14px;line-height:1.45;text-decoration:none!important}
.footer-contact-list i{margin-top:4px;color:#91c7f4;font-size:14px;text-align:center}
.footer-contact-list span{display:block}
.footer-contact-list small{display:block;margin-bottom:2px;color:#9fb9d0;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.footer-company-meta{margin:18px 0 0!important;color:#aebfd0!important;font-size:12px!important;line-height:1.65!important}
.footer-company-meta strong{color:#fff;font-size:13px}
footer .footer-bottom{border-top-color:rgba(255,255,255,.2);color:#b9ccdc}
footer .footer-bottom .admin-link{color:#b9ccdc!important}

@media(max-width:991px){
  .audience-heading{grid-template-columns:1fr;gap:18px}
  .audience-grid{grid-template-columns:1fr}
  .reference-group{grid-template-columns:1fr;gap:22px}
  .reference-group .logo-wall{grid-template-columns:repeat(3,minmax(0,1fr))}
  .restaurant-reference-photos{grid-column:1}
}
@media(max-width:600px){
  .audience-heading h2{font-size:32px}
  .audience-card{grid-template-columns:1fr}
  .audience-card>img{height:240px;min-height:240px}
  .audience-card>div{padding:26px 22px}
  .reference-group .logo-wall{grid-template-columns:repeat(2,minmax(0,1fr))}
  .restaurant-reference-photos{grid-template-columns:1fr}.restaurant-reference-photos figure{height:250px}
}

/* Reference-inspired two-bar navigation: audience first, services second */
.navbar-custom,.navbar-custom.affix{background:#fff!important;border:0;border-radius:0;padding:0!important;box-shadow:0 2px 10px rgba(15,48,84,.1)}
.audience-bar{height:42px;background:#f6f8fb;border-bottom:1px solid #dfe6ed}
.audience-bar .container{display:flex;align-items:center;justify-content:space-between;height:100%}
.audience-tabs{display:flex;align-items:stretch;height:100%;gap:26px}
.audience-tabs a{position:relative;display:flex;align-items:center;color:#536273;font-size:13px;font-weight:700;text-decoration:none}
.audience-tabs a:hover{color:#186bcc}
.audience-tabs a.active{color:#153a66}
.audience-tabs a.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:#186bcc}
.private-account{color:#284967;font-size:13px;font-weight:700;text-decoration:none}
.private-account:hover{color:#186bcc;text-decoration:none}
.private-account i{margin-right:7px;font-size:15px}
.main-nav-bar{height:76px;background:#fff}
.main-nav-bar .nav-shell{display:flex;align-items:center;height:76px;min-height:0!important;gap:38px}
.main-nav-bar .navbar-header{display:flex;align-items:center;align-self:auto!important;min-width:0!important;height:76px;border:0!important;padding:0!important}
.main-nav-bar .navbar-brand{display:flex!important;align-items:center;width:128px!important;height:72px!important;padding:0!important;overflow:visible!important}
.main-nav-bar .navbar-brand img{display:block;width:116px!important;height:68px!important;margin:0!important;object-fit:contain;transform:none!important}
.main-nav-bar .navbar-collapse{display:block!important;flex:1!important;height:76px!important;min-height:76px!important;border:0!important;padding:0!important}
.main-nav-bar .subnav{display:flex;align-items:center;justify-content:flex-start!important;height:76px!important;gap:8px;margin:0!important;border:0!important;float:none!important}
.main-nav-bar .subnav>li{float:none}
.navbar-custom .main-nav-bar .subnav>li>a{padding:13px 10px!important;color:#24384e;font:600 14px "DM Sans",sans-serif}
.navbar-custom .main-nav-bar .subnav>li>a:hover,.navbar-custom .main-nav-bar .subnav>li>a:focus{color:#186bcc;background:transparent}
.navbar-custom .main-nav-bar .subnav>li.nav-cta{margin-left:auto}
.navbar-custom .main-nav-bar .subnav>li.nav-cta>a{margin:0!important;padding:10px 17px!important;background:#186bcc;color:#fff;border:1px solid #186bcc;border-radius:7px}
.navbar-custom .main-nav-bar .subnav>li.nav-cta>a:hover{background:#125bab;color:#fff}
.public-nav~.page-content{padding-top:118px!important}
.staff-nav~.page-content{padding-top:76px!important}
html{scroll-padding-top:124px}
@media(max-width:767px){
  .audience-bar{height:40px}
  .audience-tabs{gap:22px}
  .main-nav-bar{height:64px}
  .main-nav-bar .nav-shell{display:block;height:64px;min-height:64px!important}
  .main-nav-bar .navbar-header{display:flex;height:64px;width:100%;justify-content:space-between}
  .main-nav-bar .navbar-brand{width:103px!important;height:60px!important}
  .main-nav-bar .navbar-brand img{width:94px!important;height:56px!important}
  .navbar-custom .navbar-toggle{order:2;margin:12px 0 0;background:#186bcc;border-color:#186bcc;color:#fff}
  .main-nav-bar .navbar-collapse{display:none!important;position:absolute;left:0;right:0;top:104px;height:auto!important;min-height:0!important;padding:12px 20px 20px!important;background:#fff;border-top:1px solid #dfe6ed!important;box-shadow:0 12px 24px rgba(15,48,84,.12)}
  .main-nav-bar .navbar-collapse.in{display:block!important}
  .staff-nav .main-nav-bar .navbar-collapse{top:64px}
  .main-nav-bar .subnav{display:block!important;height:auto!important}
  .navbar-custom .main-nav-bar .subnav>li>a{padding:13px 4px!important;border-bottom:1px solid #e6edf3;color:#24384e}
  .navbar-custom .main-nav-bar .subnav>li.nav-cta{margin:12px 0 0}
  .navbar-custom .main-nav-bar .subnav>li.nav-cta>a{text-align:center;border-bottom:0}
  .public-nav~.page-content{padding-top:104px!important}
  .staff-nav~.page-content{padding-top:64px!important}
  .private-account{font-size:12px}
}

.footer-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:38px;padding-top:22px;border-top:1px solid #2a435d;color:#8298ab;font-size:12px}
.footer-bottom .admin-link{color:#8298ab!important;font-size:12px}
.footer-bottom .admin-link:hover{color:#fff!important}
.footer-bottom .admin-link i{margin-right:6px;font-size:10px}
@media(max-width:767px){
  .footer-bottom{align-items:flex-start;flex-direction:column;gap:12px}
}

/* SEB-inspired single-row navigation and clean mega menu */
.navbar-custom,.navbar-custom.affix{height:78px;background:#fff!important;padding:0!important;border:0;border-bottom:1px solid #dfe5ea;box-shadow:0 2px 10px rgba(12,39,67,.07)}
.seb-nav-row{position:relative;z-index:2;height:78px;background:#fff}
.seb-nav-inner{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:78px}
.seb-nav-inner .audience-tabs{grid-column:1;justify-self:start;display:flex;height:100%;gap:30px}
.seb-nav-inner .audience-tabs a{position:relative;display:flex;align-items:center;gap:7px;height:100%;color:#313d49;font-size:14px;font-weight:700;text-decoration:none}
.seb-nav-inner .audience-tabs a i{font-size:9px;color:#697784}
.seb-nav-inner .audience-tabs a:hover{color:#186bcc}
.seb-nav-inner .audience-tabs a.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:#186bcc}
.seb-nav-inner .navbar-brand{position:absolute;left:50%;top:50%;display:flex!important;align-items:center;justify-content:center;width:112px!important;height:66px!important;margin:0!important;padding:0!important;transform:translate(-50%,-50%)}
.seb-nav-inner .navbar-brand img{display:block;width:98px!important;height:62px!important;margin:0!important;object-fit:contain;transform:none!important}
.nav-actions{grid-column:3;justify-self:end;display:flex;align-items:center;gap:22px;height:100%}
.nav-offer{padding:10px 17px;border:1px solid #186bcc;border-radius:6px;color:#165da9;font-size:14px;font-weight:700;text-decoration:none}
.nav-offer:hover{background:#186bcc;color:#fff;text-decoration:none}
.nav-account{display:flex;align-items:center;gap:9px;color:#283a4c;font-size:14px;font-weight:700;text-decoration:none}
.nav-account:hover{color:#186bcc;text-decoration:none}
.seb-menu-toggle{display:none;align-items:center;gap:8px;padding:9px 12px;border:1px solid #cad5df;border-radius:6px;background:#fff;color:#283a4c;font-weight:700}
.seb-mega-menu{position:absolute;z-index:1;left:0;right:0;top:78px;display:none;background:#fff;border-bottom:1px solid #dfe5ea;box-shadow:0 18px 38px rgba(12,39,67,.12)}
.mega-is-open .seb-mega-menu{display:block}
.seb-mega-inner{display:block;min-height:300px;padding-top:40px;padding-bottom:46px}
.mega-heading{display:flex;align-items:center;gap:13px;margin-bottom:34px;color:#1e2e3e;font:700 24px "Manrope",sans-serif}
.mega-heading i{font-size:14px;color:#186bcc}
.mega-panel{display:none}.mega-panel.is-active{display:block}
.mega-business-layout{display:grid;grid-template-columns:702px 320px;gap:64px;align-items:start}
.seb-mega-menu .subnav{display:grid;grid-template-columns:repeat(2,minmax(250px,330px));align-content:start;gap:0 42px;width:702px;margin:0;padding:0;list-style:none}
.seb-mega-menu .subnav li{border-bottom:1px solid #dfe6ec}
.seb-mega-menu .subnav a{display:flex;align-items:center;justify-content:space-between;min-height:58px;padding:15px 4px;color:#283a4c;font-size:15px;font-weight:600;text-decoration:none}
.seb-mega-menu .subnav a:hover{color:#186bcc}
.seb-mega-menu .subnav a i{font-size:11px}
.mega-quote-card{padding:26px 28px;background:#f1f6fb;border-left:4px solid #186bcc;border-radius:0 8px 8px 0}
.mega-quote-card>span{display:block;margin-bottom:10px;color:#186bcc;font-size:11px;font-weight:800;letter-spacing:.12em}
.mega-quote-card>strong{display:block;color:#213447;font:700 18px/1.45 "Manrope",sans-serif}
.mega-quote-button{display:flex;align-items:center;justify-content:space-between;margin-top:22px;padding:13px 16px;border-radius:5px;background:#186bcc;color:#fff!important;font-size:14px;font-weight:700;text-decoration:none!important}
.mega-quote-button:hover{background:#1059ad}
.session-links:empty{display:none}
.public-nav~.page-content,.staff-nav~.page-content{padding-top:78px!important}
html{scroll-padding-top:84px}
@media(max-width:767px){
  .navbar-custom,.navbar-custom.affix,.seb-nav-row{height:68px}
  .seb-nav-inner{display:flex;justify-content:space-between;height:68px;padding-left:16px;padding-right:16px}
  .seb-nav-inner .audience-tabs{gap:18px}
  .seb-nav-inner .audience-tabs a{font-size:13px}
  .seb-nav-inner .audience-tabs a i{display:none}
  .seb-nav-inner .navbar-brand{display:none!important}
  .nav-actions{flex:0 0 auto;margin-left:auto;gap:9px}
  .nav-offer{display:none}
  .nav-account{display:flex;gap:6px;white-space:nowrap;font-size:12px}
  .nav-account i,.nav-account svg{font-size:13px}
  .seb-menu-toggle{display:none!important}
  .seb-mega-menu{position:fixed;top:68px;bottom:0;overflow:auto}
  .seb-mega-inner{display:block;min-height:0;padding:28px 22px}
  .mega-heading{padding:0 0 20px;border:0;border-bottom:1px solid #dfe5ea;font-size:22px}
  .seb-mega-menu .subnav{display:block;width:auto;padding:8px 0 0}
  .mega-business-layout{display:block}.mega-quote-card{margin-top:28px}
  .public-nav~.page-content,.staff-nav~.page-content{padding-top:68px!important}
}

/* Professional private pages */
.private-area-page{padding:38px 0 92px;background:#f4f7fa!important}
.private-area-page .private-page-heading{position:relative;display:flex;min-height:330px;max-width:none;margin:0 0 24px;padding:52px 56px;overflow:hidden;border-radius:14px;background:linear-gradient(90deg,rgba(7,36,68,.94) 0%,rgba(7,36,68,.8) 48%,rgba(7,36,68,.22) 100%),url('../img/work/residential-brf.jpg') center 58%/cover no-repeat!important;color:#fff;text-align:left;flex-direction:column;justify-content:center;box-shadow:0 14px 35px rgba(16,52,87,.12)}
.private-area-page .private-page-heading:after{content:"";position:absolute;right:0;bottom:0;width:42%;height:5px;background:#186bcc}
.private-page-heading{max-width:720px;margin:0 auto 42px;text-align:center}
.private-page-heading h1,.order-intro h1{margin:0;color:#102a47;font:750 44px/1.12 "Manrope",sans-serif;letter-spacing:-.045em}
.private-area-page .private-page-heading .section-kicker{margin-bottom:13px;color:#9dd1ff}
.private-area-page .private-page-heading h1{max-width:600px;color:#fff;font-size:48px}
.private-page-heading p,.order-intro>p{margin:20px auto 0;color:#566b7e;font-size:17px;line-height:1.7}
.private-area-page .private-page-heading p{max-width:650px;margin:16px 0 0;color:#dce9f4;font-size:16px;line-height:1.65}
.area-intro-card{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;max-width:900px;margin:0 auto 34px;overflow:hidden;border:1px solid #d7e2ec;border-radius:12px;background:#d7e2ec}
.area-intro-card>div{display:grid;grid-template-columns:42px 1fr;gap:14px;padding:24px;background:#fff}
.area-intro-card i{display:grid;place-items:center;width:40px;height:40px;border-radius:9px;background:#e9f3fd;color:#186bcc}
.area-intro-card strong{display:block;margin-bottom:3px;color:#193650;font-size:14px}.area-intro-card span{color:#64788b;font-size:13px;line-height:1.5}
.area-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.area-card-grid article{display:flex;align-items:center;gap:14px;min-height:92px;padding:22px;border:1px solid #d7e2ec;border-radius:10px;background:#fff;box-shadow:0 7px 20px rgba(16,52,87,.05)}
.area-card-grid article i{color:#186bcc;font-size:14px}.area-card-grid article h2{margin:0;color:#1c354e;font:700 15px/1.45 "DM Sans",sans-serif;letter-spacing:0}
.area-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:34px;padding:25px 28px;border-radius:12px;background:#102f55;color:#fff}
.area-cta strong,.area-cta span{display:block}.area-cta strong{font-size:17px}.area-cta span{margin-top:3px;color:#bfd0df;font-size:13px}.area-cta .btn{flex:none;background:#fff!important;border-color:#fff!important;color:#155da9!important}

section#order.private-order-page{padding:72px 20px 54px;background:#f4f7fa}
section#order.private-order-page .step{max-width:780px}
section#order.private-order-page .order-intro{max-width:900px;padding:0 0 44px;text-align:center}
section#order.private-order-page .order-intro>p{padding:0!important;text-align:center!important}
.order-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:30px}
.order-benefits span{display:flex;align-items:center;justify-content:center;gap:9px;padding:16px 12px;border:1px solid #d6e2ec;border-radius:9px;background:#fff;color:#29445e;font-size:13px}
.order-benefits i{color:#186bcc}.order-benefits strong{font-weight:700}
.postal-code-step{position:relative;max-width:780px!important;margin:0 auto 26px!important;padding:34px!important;border:1px solid #cbdcea!important;border-radius:14px!important;background:#fff!important;box-shadow:0 10px 30px rgba(18,57,94,.07)!important;text-align:center!important}.postal-code-icon{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 13px;border-radius:12px;background:#eaf3fc;color:#186bcc;font-size:19px}.postal-code-step .step-number{display:block;margin-bottom:5px;color:#186bcc;font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.postal-code-step h2{margin:0!important;color:#173650!important;font-size:26px!important}.postal-code-content>p{max-width:560px;margin:10px auto 22px!important;padding:0!important;color:#62778b!important;font-size:14px!important;text-align:center!important}.postal-code-form{max-width:520px;margin:auto;text-align:left}.postal-code-form>label{display:block;margin-bottom:7px;color:#203c56;font-size:13px;font-weight:800}.postal-code-form>div{display:grid;grid-template-columns:1fr auto;gap:9px}.postal-code-form input{width:100%;height:50px;padding:0 15px;border:1px solid #bdcddd;border-radius:8px;color:#173650;font-size:17px;font-weight:700;letter-spacing:.05em;outline:none}.postal-code-form input:focus{border-color:#186bcc;box-shadow:0 0 0 3px rgba(24,107,204,.1)}.postal-code-form button{height:50px;padding:0 20px;border:0;border-radius:8px;background:#186bcc;color:#fff;font-weight:800}.postal-code-form button:disabled{background:#c8d2dc;color:#718293;cursor:not-allowed}.postal-code-status{display:block;margin-top:10px;color:#718395;font-size:12px;line-height:1.5}.postal-code-status.is-error{color:#b33131}.postal-code-status.is-success{color:#177245;font-weight:700}
.postal-code-rejection{display:none;min-height:330px;padding:28px 20px;align-items:center;justify-content:center;flex-direction:column}.postal-code-step.is-rejected .postal-code-content{display:none}.postal-code-step.is-rejected .postal-code-rejection{display:flex}.rejection-icon{display:grid;place-items:center;width:66px;height:66px;margin-bottom:18px;border-radius:50%;background:#fff0f0;color:#c83838;font-size:25px}.postal-code-rejection>span{color:#b33131;font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.postal-code-rejection h2{margin:8px 0 10px!important;color:#173650!important;font-size:42px!important}.postal-code-rejection p{max-width:500px;margin:0!important;padding:0!important;color:#5f7386!important;font-size:17px!important;text-align:center!important}.postal-code-rejection button{margin-top:25px;padding:12px 17px;border:1px solid #b9cbd9;border-radius:7px;background:#fff;color:#29465f;font-size:13px;font-weight:800}.postal-code-rejection button:hover{border-color:#186bcc;color:#186bcc}
section#order.private-order-page .step:not(.order-intro){margin-top:18px;padding:34px;border:1px solid #d7e2ec;border-radius:14px;background:#fff;box-shadow:0 10px 30px rgba(18,57,94,.07)}
section#order.private-order-page .step:not(.order-intro)>h2{margin:0 0 22px;color:#173650;font-size:25px}
section#order.private-order-page .step select{width:100%;max-width:460px;height:50px;padding:0 42px 0 15px;border:1px solid #bdcddd;border-radius:8px;background:#fff;color:#263f57;font-size:15px}
section#order.private-order-page .btn-group{gap:12px}
section#order.private-order-page .btn-group button,section#order.private-order-page .btn-group-vertical button{min-width:150px;padding:15px 22px;border:1px solid #b9c9d8;border-radius:8px;color:#213b54;background:#fff;font:700 15px "DM Sans",sans-serif}
section#order.private-order-page .btn-group button:hover,section#order.private-order-page .btn-group button.used,section#order.private-order-page .btn-group-vertical button:hover,section#order.private-order-page .btn-group-vertical button.used{border-color:#186bcc;background:#186bcc;color:#fff}
section#order.private-order-page .input-group{width:100%;max-width:560px}
section#order.private-order-page p{color:#566b7e}
section#services.private-order-note{padding:0 20px 78px;background:#f4f7fa}
.private-order-note .container{max-width:780px}.private-order-note .m-t-l{margin-top:0!important}
.private-order-note .col-md-12{padding:25px 28px!important;border:1px solid #d7e2ec;border-radius:12px;background:#fff;text-align:left!important}
.private-order-note .fa-stack{display:none}
.private-order-note h4{margin:0 0 7px;color:#173650;font-size:16px}.private-order-note p{margin:0!important;padding:0!important;color:#607488!important;font-size:13px!important;text-align:left!important}
.private-order-note p+p{margin-top:13px!important}.private-order-note a.button{display:inline-flex!important;width:auto!important;margin:0!important;padding:9px 13px!important;border:1px solid #186bcc!important;border-radius:6px!important;color:#186bcc!important;background:#fff!important;text-decoration:none}

@media(max-width:767px){
  .private-area-page{padding:18px 0 65px}.private-area-page .private-page-heading{min-height:310px;margin:0 0 18px;padding:38px 26px;border-radius:10px;background-position:66% center!important}.private-area-page .private-page-heading h1,.private-page-heading h1,.order-intro h1{font-size:34px}.private-page-heading p,.order-intro>p{font-size:15px}
  .area-intro-card,.area-card-grid,.order-benefits{grid-template-columns:1fr}.area-card-grid article{min-height:76px}.area-cta{align-items:flex-start;flex-direction:column}
  section#order.private-order-page{padding:52px 14px 38px}section#order.private-order-page .step:not(.order-intro){padding:25px 18px}
  .postal-code-step{margin-bottom:18px!important;padding:27px 18px!important}.postal-code-form>div{grid-template-columns:1fr}.postal-code-form button{width:100%}
  section#order.private-order-page .btn-group{display:grid}section#order.private-order-page .btn-group button{width:100%}
}
