:root{--ink:#101828;--muted:#667085;--purple:#6c4df6;--purple-dark:#4f35cf;--lime:#b8f34b;--cream:#f7f7fb;--line:#e7e7ef;--navy:#11142d;--white:#fff;--shadow:0 24px 70px rgba(24,27,56,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Manrope,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.65}a{text-decoration:none;color:inherit}.container{width:min(1160px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(231,231,239,.75)}.nav-wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;gap:11px;align-items:center}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--purple);color:#fff;font-weight:800;letter-spacing:-1px}.brand strong,.brand small{display:block;line-height:1.15}.brand strong{font-size:14px}.brand small{font-size:12px;color:var(--muted);letter-spacing:2px;text-transform:uppercase}.main-nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:700}.main-nav a{transition:.2s}.main-nav a:hover{color:var(--purple)}.nav-cta{padding:11px 19px;border-radius:10px;background:var(--ink);color:#fff!important}.nav-toggle{display:none;border:0;background:none;font-size:27px}.hero{min-height:720px;position:relative;overflow:hidden;display:flex;align-items:center;background:linear-gradient(135deg,#f8f7ff 0%,#fff 52%,#f5ffe6 100%)}.hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(#d5d2e8 1px,transparent 1px);background-size:26px 26px;mask-image:linear-gradient(to bottom,black,transparent 70%);opacity:.35}.hero-orb{position:absolute;border-radius:999px;filter:blur(1px)}.orb-one{width:420px;height:420px;background:rgba(108,77,246,.12);right:-180px;top:-130px}.orb-two{width:300px;height:300px;background:rgba(184,243,75,.18);left:-120px;bottom:-130px}.hero-grid{position:relative;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:70px;padding:100px 0}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--purple);font-size:13px;text-transform:uppercase;letter-spacing:1.7px;font-weight:800}.hero h1{font-size:clamp(46px,5.4vw,76px);line-height:1.04;letter-spacing:-4px;max-width:710px;margin:20px 0 24px}.hero-copy>p{font-size:19px;color:var(--muted);max-width:650px}.hero-actions{display:flex;gap:13px;margin:35px 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:12px;padding:15px 23px;font:700 14px Manrope;cursor:pointer;transition:.25s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--purple);color:#fff;box-shadow:0 14px 28px rgba(108,77,246,.25)}.btn-primary:hover{background:var(--purple-dark)}.btn-secondary{background:#fff;border:1px solid var(--line)}.hero-trust{display:flex;gap:22px;flex-wrap:wrap;color:#475467;font-size:13px;font-weight:700}.hero-trust i{color:var(--purple);margin-right:5px}.hero-visual{position:relative}.browser-card{background:#fff;border:1px solid #deddea;border-radius:20px;box-shadow:var(--shadow);transform:rotate(1.5deg);padding:13px}.browser-top{height:32px;display:flex;gap:6px;padding:8px}.browser-top span{width:8px;height:8px;border-radius:50%;background:#e1dfeb}.browser-content{border-radius:12px;overflow:hidden;background:#f7f6fc}.mock-nav{height:55px;display:flex;align-items:center;gap:18px;padding:0 22px;background:#fff;font-size:10px}.mock-nav b{margin-right:auto}.mock-nav em{width:32px;height:5px;background:#e1e0ea;border-radius:5px}.mock-hero{height:250px;padding:45px 36px;background:linear-gradient(130deg,#171632,#5e42d3);color:#fff;position:relative;overflow:hidden}.mock-hero:after{content:"";position:absolute;width:210px;height:210px;border:45px solid var(--lime);border-radius:50%;right:-70px;bottom:-100px;opacity:.85}.mock-hero small,.mock-hero strong{display:block;position:relative;z-index:1}.mock-hero small{font-size:8px;letter-spacing:1.2px;color:#c8beff}.mock-hero strong{font-size:29px;line-height:1.15;margin-top:14px}.mock-hero i{display:block;width:78px;height:24px;border-radius:5px;background:var(--lime);margin-top:22px}.mock-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;padding:18px}.mock-cards span{height:65px;border-radius:8px;background:#fff}.floating-card{position:absolute;background:#fff;border:1px solid var(--line);box-shadow:0 15px 40px rgba(20,21,45,.14);border-radius:14px}.speed-card{left:-50px;bottom:45px;display:flex;align-items:center;gap:11px;padding:14px 17px}.speed-card i{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:#efffd0;color:#6a930e}.floating-card b,.floating-card small{display:block}.floating-card b{font-size:12px}.floating-card small{font-size:9px;color:var(--muted)}.rating-card{right:-20px;top:40px;padding:14px 17px}.rating-card b{font-size:19px}.rating-card span{color:#f4b223;font-size:10px}.logo-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.logo-strip .container{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:#98a2b3;font-size:14px}.logo-strip span{font-size:11px;text-transform:uppercase;letter-spacing:1px}.logo-strip b{color:#667085}.section{padding:110px 0}.section-heading{text-align:center;max-width:720px;margin:0 auto 58px}.section-heading h2,.process-intro h2,.about-copy h2,.contact-copy h2{font-size:clamp(34px,4vw,52px);line-height:1.1;letter-spacing:-2.3px;margin:13px 0 17px}.section-heading p,.process-intro p,.about-copy>p{color:var(--muted);font-size:17px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{padding:32px;border:1px solid var(--line);border-radius:18px;background:#fff;transition:.3s}.service-card:hover{transform:translateY(-7px);box-shadow:0 18px 45px rgba(23,25,55,.09);border-color:#d7d2fa}.service-card>i{width:48px;height:48px;display:grid;place-items:center;border-radius:13px;background:#f0edff;color:var(--purple);font-size:22px}.service-card h3{font-size:19px;margin:22px 0 8px}.service-card p{font-size:14px;color:var(--muted);min-height:70px}.service-card a,.text-link{font-size:13px;font-weight:800;color:var(--purple)}.process-section{background:var(--navy);color:#fff}.process-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.process-intro{position:sticky;top:135px;align-self:start}.process-intro p{color:#aaaec5}.process-intro .text-link{color:var(--lime)}.steps{border-top:1px solid rgba(255,255,255,.13)}.step{display:grid;grid-template-columns:70px 1fr;gap:20px;padding:32px 0;border-bottom:1px solid rgba(255,255,255,.13)}.step>span{font-size:13px;color:var(--lime);font-weight:800}.step h3{margin:0 0 7px;font-size:20px}.step p{margin:0;color:#aaaec5;font-size:14px}.split-heading{max-width:none;display:grid;grid-template-columns:1fr 360px;align-items:end;text-align:left}.split-heading p{margin-bottom:10px}.portfolio-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:22px}.project-large{grid-row:span 2}.project{border:1px solid var(--line);border-radius:18px;padding:12px;background:#fff}.project-screen{height:245px;border-radius:12px;padding:30px;color:#fff;position:relative;overflow:hidden}.project-large .project-screen{height:570px}.garage{background:linear-gradient(rgba(9,19,30,.3),rgba(9,19,30,.82)),linear-gradient(135deg,#163148,#365974)}.garage:after{content:"";position:absolute;right:-70px;bottom:-120px;width:390px;height:390px;border:60px solid #cadd37;border-radius:50%}.project-screen span,.project-screen h3,.project-screen button{position:relative;z-index:1}.garage span{font-weight:800;letter-spacing:3px}.garage h3{font-size:43px;line-height:1.05;max-width:340px;margin-top:170px}.garage button{border:0;padding:11px 19px;border-radius:8px;background:#cadd37;font-weight:800}.renovation{background:linear-gradient(135deg,#d7c5ac,#837363)}.renovation span{border:1px solid #fff;padding:6px;font-weight:800}.renovation h3{font-family:Georgia,serif;font-size:30px;line-height:1.1;margin-top:55px}.tyres{background:#e9eeef;color:#18252c}.tyres h3{font-size:25px;position:absolute;bottom:20px}.tyre-ring{position:absolute;width:160px;height:160px;border:38px solid #20282b;border-radius:50%;right:-10px;top:28px;box-shadow:inset 0 0 0 9px #a6b4b9}.project-meta{display:flex;align-items:center;justify-content:space-between;padding:16px 8px 7px}.project-meta small{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:1.2px}.project-meta h3{margin:2px 0;font-size:16px}.project-meta a{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%}.about-section{background:var(--cream)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.about-image{position:relative}.code-window{border-radius:20px;overflow:hidden;background:#1b1d2d;color:#d7dcff;box-shadow:var(--shadow)}.code-window>div{height:45px;border-bottom:1px solid #313448;display:flex;gap:7px;align-items:center;padding:0 18px}.code-window>div span{width:9px;height:9px;border-radius:50%;background:#52556c}.code-window pre{padding:65px 40px 80px;margin:0;font:15px/2 Consolas,monospace;white-space:pre-wrap}.experience-badge{position:absolute;right:-35px;bottom:-35px;width:145px;height:145px;border-radius:50%;background:var(--lime);display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 16px 35px rgba(79,104,25,.2)}.experience-badge strong{font-size:35px}.experience-badge span{font-size:10px;line-height:1.2;font-weight:800}.about-copy ul{list-style:none;padding:0;margin:32px 0}.about-copy li{display:flex;gap:15px;margin:22px 0}.about-copy li>i{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#e8e3ff;color:var(--purple);font-weight:800}.about-copy b,.about-copy small{display:block}.about-copy small{color:var(--muted);margin-top:4px}.testimonial-section{padding:95px 0;background:#fff}.testimonial{max-width:820px;text-align:center}.testimonial>i{font-size:46px;color:var(--purple)}blockquote{font-size:clamp(25px,3vw,38px);line-height:1.4;letter-spacing:-1.2px;margin:20px 0 30px}.testimonial>div{display:flex;justify-content:center;align-items:center;gap:13px}.avatar{width:45px;height:45px;border-radius:50%;display:grid;place-items:center;background:#e9e4ff;color:var(--purple);font-weight:800}.testimonial p{text-align:left;margin:0}.testimonial b,.testimonial small{display:block}.testimonial small{color:var(--muted)}.stars{color:#f2b01e;margin-left:10px}.contact-section{background:linear-gradient(135deg,#4e34ce,#7659f8);color:#fff;position:relative;overflow:hidden}.contact-section:after{content:"";position:absolute;width:400px;height:400px;border:80px solid rgba(184,243,75,.16);border-radius:50%;left:-160px;bottom:-240px}.contact-grid{position:relative;z-index:1;display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:center}.eyebrow.light{color:var(--lime)}.contact-copy p{color:#ddd8ff}.contact-details{margin-top:34px}.contact-details a{display:flex;align-items:center;gap:14px;margin:18px 0}.contact-details i{width:42px;height:42px;border-radius:12px;background:rgba(255,255,255,.12);display:grid;place-items:center}.contact-details small,.contact-details span{display:block}.contact-details small{color:#c8c1ff;font-size:10px;text-transform:uppercase;letter-spacing:1px}.contact-card{background:#fff;color:var(--ink);border-radius:20px;padding:35px;box-shadow:0 24px 70px rgba(32,17,112,.25)}.form-row{margin-bottom:17px}.form-row label{display:block;font-size:12px;font-weight:800;margin-bottom:6px}.form-row input,.form-row textarea{width:100%;border:1px solid #dcdce6;border-radius:10px;padding:13px 14px;font:14px Manrope;outline:none}.form-row input:focus,.form-row textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px rgba(108,77,246,.1)}.form-row span{font-size:11px;color:#c52e45}.form-submit{width:100%;margin-top:5px}.success-message{display:flex;gap:9px;align-items:center;background:#eefbdc;color:#42620b;border-radius:10px;padding:12px;margin-bottom:18px;font-size:13px;font-weight:700}.site-footer{padding:65px 0 25px;background:#0d1022;color:#fff}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.4fr;gap:60px}.footer-brand{margin-bottom:18px}.footer-grid p{color:#9297ad;max-width:420px}.footer-grid h3{font-size:13px;text-transform:uppercase;letter-spacing:1.2px;color:#cfd2df}.footer-grid>div>a:not(.brand){display:block;color:#9297ad;font-size:13px;margin:8px 0}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #24283a;margin-top:45px;padding-top:22px;color:#72788f;font-size:11px}.legal-page{min-height:60vh}.narrow{max-width:800px}.legal-page h1{font-size:52px}.legal-page h2{margin-top:35px}.reveal{opacity:0;transform:translateY(25px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:900px){.main-nav{display:none;position:absolute;top:75px;left:20px;right:20px;padding:22px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.nav-toggle{display:block}.hero-grid,.process-grid,.about-grid,.contact-grid{grid-template-columns:1fr}.hero-grid{padding:75px 0}.hero-copy{text-align:center}.hero-copy>p{margin-left:auto;margin-right:auto}.hero-actions,.hero-trust{justify-content:center}.hero-visual{max-width:600px;margin:auto}.process-intro{position:static}.portfolio-grid{grid-template-columns:1fr 1fr}.project-large{grid-column:span 2;grid-row:auto}.project-large .project-screen{height:430px}.service-grid{grid-template-columns:repeat(2,1fr)}.split-heading{grid-template-columns:1fr}.contact-grid{gap:45px}.footer-grid{grid-template-columns:1.5fr 1fr}}@media(max-width:620px){.container{width:min(100% - 28px,1160px)}.hero{min-height:auto}.hero h1{font-size:45px;letter-spacing:-2.8px}.hero-actions{flex-direction:column}.hero-trust{gap:10px 16px}.hero-visual{margin-top:20px}.floating-card{display:none}.logo-strip .container{overflow:auto;justify-content:flex-start;white-space:nowrap}.section{padding:80px 0}.section-heading h2,.process-intro h2,.about-copy h2,.contact-copy h2{font-size:37px}.service-grid,.portfolio-grid{grid-template-columns:1fr}.project-large{grid-column:auto}.project-large .project-screen{height:400px}.garage h3{font-size:34px;margin-top:130px}.split-heading{display:block}.about-grid{gap:60px}.experience-badge{right:5px;width:115px;height:115px}.code-window pre{padding:50px 22px;font-size:12px}.contact-card{padding:24px}.footer-grid{grid-template-columns:1fr;gap:25px}.footer-bottom{gap:15px;flex-direction:column}.stars{display:none}}

/* Free quote page */
.quote-hero{padding:90px 0 70px;background:linear-gradient(135deg,#f8f7ff,#fff 60%,#f5ffe6);border-bottom:1px solid var(--line)}
.quote-heading{text-align:center}.quote-heading h1{font-size:clamp(42px,5vw,68px);line-height:1.06;letter-spacing:-3px;margin:18px 0}.quote-heading p{font-size:18px;color:var(--muted);max-width:760px;margin:auto}
.quote-page{background:var(--cream)}.quote-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:32px;align-items:start}.quote-sidebar{position:sticky;top:110px;display:grid;gap:18px}.quote-help-card{padding:25px;border:1px solid var(--line);border-radius:17px;background:#fff}.quote-help-card>i{width:45px;height:45px;display:grid;place-items:center;border-radius:12px;background:#eeeaff;color:var(--purple);font-size:21px}.quote-help-card h2{font-size:16px;margin:17px 0 7px}.quote-help-card p{font-size:13px;color:var(--muted);margin:0}.quote-card{padding:38px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 22px 60px rgba(24,27,56,.08)}
.quote-section{border:0;padding:0 0 34px;margin:0 0 34px;border-bottom:1px solid var(--line)}.quote-section:last-of-type{border-bottom:0;margin-bottom:10px}.quote-section legend{display:flex;align-items:center;gap:12px;width:100%;font-size:20px;font-weight:800;margin-bottom:25px}.quote-section legend span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--purple);color:#fff;font-size:13px}.form-grid.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.quote-card .form-row input,.quote-card .form-row textarea{background:#fff}.quote-card textarea{resize:vertical}.field-help{display:block;margin-top:7px;color:var(--muted);font-size:11px;line-height:1.5}.domain-input{display:flex;border:1px solid #dcdce6;border-radius:10px;overflow:hidden;transition:.2s}.domain-input:focus-within{border-color:var(--purple);box-shadow:0 0 0 3px rgba(108,77,246,.1)}.domain-input span{display:flex;align-items:center;padding:0 12px;background:#f5f5f8;color:#667085;font-size:13px;border-right:1px solid #dcdce6}.domain-input input{border:0!important;border-radius:0!important;box-shadow:none!important}.choice-group{display:flex;flex-wrap:wrap;gap:10px}.choice-group label{display:flex;align-items:center;gap:8px;min-width:105px;padding:11px 14px;border:1px solid #dcdce6;border-radius:10px;font-size:13px;font-weight:700;cursor:pointer}.choice-group input{width:auto!important;accent-color:var(--purple)}.conditional-panel{display:none;padding:20px;margin-top:14px;border-radius:13px;background:#f8f7fc;border:1px solid #e8e5f5}.conditional-panel.active{display:block}.address-panel h3{margin:0 0 18px;font-size:15px;color:var(--purple)}.validation-summary{color:#b42318;font-size:13px;margin-bottom:18px}.validation-summary:empty{display:none}.quote-submit{padding:17px 25px;font-size:15px}.privacy-note{text-align:center;color:var(--muted);font-size:11px;margin:14px 0 0}.privacy-note i{margin-right:5px}
@media(max-width:900px){.quote-layout{grid-template-columns:1fr}.quote-sidebar{position:static;grid-template-columns:1fr 1fr}.quote-card{padding:30px}}
@media(max-width:620px){.quote-hero{padding:65px 0 50px}.quote-heading h1{font-size:42px;letter-spacing:-2px}.quote-sidebar,.form-grid.two-columns{grid-template-columns:1fr}.quote-card{padding:22px}.quote-section legend{font-size:18px;align-items:flex-start}.choice-group{display:grid;grid-template-columns:1fr 1fr}.choice-group label{min-width:0}.domain-input span{padding:0 9px}}


/* Costings page */
.costings-page{background:var(--cream)}.pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:1000px;margin:auto}.pricing-card{position:relative;padding:38px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 18px 50px rgba(24,27,56,.07)}.pricing-card.featured{border:2px solid var(--purple);box-shadow:0 25px 70px rgba(108,77,246,.15)}.featured-badge{position:absolute;right:22px;top:22px;padding:7px 11px;border-radius:999px;background:#eeeaff;color:var(--purple);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1px}.pricing-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:15px;background:#eeeaff;color:var(--purple);font-size:24px;margin-bottom:22px}.pricing-label{font-size:11px;text-transform:uppercase;letter-spacing:1.3px;color:var(--purple);font-weight:800}.pricing-card h2{font-size:29px;letter-spacing:-1px;margin:8px 0 10px}.pricing-intro{color:var(--muted);font-size:14px;min-height:70px}.setup-price{display:flex;align-items:end;justify-content:space-between;margin:28px 0 18px;padding:20px;border-radius:14px;background:#f7f6fc}.setup-price small{font-size:12px;color:var(--muted);font-weight:700}.setup-price strong{font-size:38px;line-height:1;color:var(--purple)}.cost-breakdown{list-style:none;margin:0;padding:0}.cost-breakdown li{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.cost-breakdown li span{color:#475467}.cost-breakdown li.total{font-size:14px;border-bottom:0;padding-top:17px}.cost-breakdown li.total span,.cost-breakdown li.total b{color:var(--ink);font-weight:800}.ongoing-cost{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:22px 0;padding:16px 18px;border-radius:13px;background:#efffd9}.ongoing-cost>span{font-size:12px;font-weight:800;color:#49660d}.ongoing-cost i{margin-right:6px}.ongoing-cost strong{font-size:24px;color:#42620b;white-space:nowrap}.ongoing-cost strong small{font-size:10px}.pricing-button{width:100%}.pricing-note{display:flex;align-items:flex-start;gap:17px;max-width:1000px;margin:30px auto 0;padding:24px;border:1px solid #dad6f5;border-radius:16px;background:#f6f4ff}.pricing-note>i{width:40px;height:40px;display:grid;place-items:center;flex:none;border-radius:11px;background:#e8e3ff;color:var(--purple)}.pricing-note h3{font-size:15px;margin:0 0 4px}.pricing-note p{font-size:13px;color:var(--muted);margin:0}.pricing-cta{background:linear-gradient(135deg,#4e34ce,#7659f8);color:#fff}.pricing-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:50px}.pricing-cta h2{font-size:clamp(32px,4vw,48px);line-height:1.1;letter-spacing:-2px;margin:10px 0}.pricing-cta p{max-width:720px;color:#ddd8ff}.pricing-light-button{background:#fff;color:var(--purple);white-space:nowrap}

/* Live client work */
.client-work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.client-project{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#fff;transition:.3s}.client-project:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(23,25,55,.1)}.client-project-visual{display:block;height:285px;padding:28px;position:relative;overflow:hidden}.client-project-visual>i{position:absolute;right:22px;top:22px;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.9);color:var(--ink)}.client-project-visual h3{position:absolute;left:28px;bottom:24px;margin:0;font-size:29px;line-height:1.08}.client-project-visual.winnington{background:#dce7e6}.client-project-copy{padding:24px}.client-project-copy small{color:var(--purple);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1.1px}.client-project-copy h3{margin:7px 0 9px;font-size:19px}.client-project-copy p{color:var(--muted);font-size:13px;min-height:88px}.client-project-copy a{color:var(--purple);font-size:12px;font-weight:800}
@media(max-width:900px){.pricing-grid,.client-work-grid{grid-template-columns:1fr 1fr}.client-project:last-child{grid-column:1/-1;max-width:calc(50% - 12px);width:100%;justify-self:center}.pricing-cta-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.pricing-grid,.client-work-grid{grid-template-columns:1fr}.pricing-card{padding:26px}.pricing-intro{min-height:0}.client-project:last-child{grid-column:auto;max-width:none}.client-project-copy p{min-height:0}.pricing-cta-inner{gap:20px}.pricing-light-button{width:100%}}

/* Light home page background */
body.home-background,body.home-background main{background:#f4f8fc}.home-background .section:not(.process-section):not(.pricing-cta){background:transparent}.home-background .service-card,.home-background .client-project{box-shadow:0 12px 35px rgba(30,55,85,.06)}

/* Login-aware navigation */
.nav-account-form{margin:0}.nav-account-link{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:inherit;font:inherit;font-weight:700;cursor:pointer;padding:0}.main-nav .nav-account-link:hover{color:var(--purple)}

/* Quote administration reports */
.report-hero{padding:75px 0 55px;background:linear-gradient(135deg,#f3f6ff,#fff 55%,#f2fff1);border-bottom:1px solid var(--line)}.report-hero.compact{padding:55px 0 42px}.report-hero-inner{display:flex;align-items:center;justify-content:space-between;gap:35px}.report-hero h1{font-size:clamp(40px,5vw,62px);letter-spacing:-3px;margin:14px 0 8px}.report-hero p{color:var(--muted);margin:0}.report-count{min-width:145px;padding:22px;text-align:center;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 15px 40px rgba(24,27,56,.07)}.report-count strong{display:block;font-size:35px;color:var(--purple)}.report-count span{font-size:11px;color:var(--muted);font-weight:800;text-transform:uppercase}.report-page{background:#f7f9fc;min-height:55vh}.report-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:22px}.report-search{position:relative;flex:1}.report-search i{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--muted)}.report-search input{width:100%;height:50px;padding:0 16px 0 44px;border:1px solid var(--line);border-radius:12px;background:#fff;font:inherit}.report-table-card{overflow:hidden;border:1px solid var(--line);border-radius:19px;background:#fff;box-shadow:0 18px 50px rgba(24,27,56,.06)}.table-scroll{overflow-x:auto}.quote-table{width:100%;border-collapse:collapse;min-width:980px}.quote-table th{padding:15px 17px;text-align:left;background:#f7f7fa;color:#667085;font-size:10px;text-transform:uppercase;letter-spacing:.8px}.quote-table td{padding:17px;border-top:1px solid var(--line);font-size:13px;vertical-align:middle}.quote-table td small{display:block;margin-top:4px;color:var(--muted)}.status-pill{display:inline-flex;padding:6px 10px;border-radius:999px;background:#eaf8df;color:#3d651a;font-size:10px;font-weight:800;text-transform:uppercase}.status-pill.large{font-size:12px;padding:9px 14px}.table-link,.back-link{color:var(--purple);font-weight:800;font-size:12px}.empty-report{text-align:center;padding:75px 25px}.empty-report>i{font-size:45px;color:var(--purple)}.empty-report h2{margin:16px 0 7px}.empty-report p{color:var(--muted)}.quote-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.detail-card{padding:28px;border:1px solid var(--line);border-radius:18px;background:#fff}.detail-card.full-width{grid-column:1/-1}.detail-card h2{display:flex;align-items:center;gap:10px;font-size:18px;margin:0 0 23px}.detail-card h2 i{color:var(--purple)}.detail-card dl{display:grid;grid-template-columns:170px 1fr;margin:0}.detail-card dt,.detail-card dd{padding:11px 0;border-bottom:1px solid var(--line);font-size:13px}.detail-card dt{color:var(--muted);font-weight:700}.detail-card dd{margin:0;font-weight:600}.detail-card dd a{color:var(--purple)}.pre-line,.description-text{white-space:pre-line}.description-text{color:#475467;line-height:1.8;margin:0}
@media(max-width:900px){.report-hero-inner{align-items:flex-start}.quote-detail-grid{grid-template-columns:1fr}.detail-card.full-width{grid-column:auto}}
@media(max-width:620px){.report-hero-inner{flex-direction:column}.report-count{width:100%}.report-toolbar{align-items:stretch;flex-direction:column}.report-toolbar .btn{width:100%}.detail-card{padding:21px}.detail-card dl{grid-template-columns:1fr}.detail-card dt{padding-bottom:3px;border-bottom:0}.detail-card dd{padding-top:3px}.report-hero h1{font-size:40px;letter-spacing:-2px}}

/* Identity and account navigation */
.nav-account-form { display: inline-flex; margin: 0; padding: 0; }
.nav-account-link, .nav-user-name { display: inline-flex; align-items: center; gap: .4rem; white-space: nowrap; }
.nav-account-button { border: 0; background: transparent; font: inherit; cursor: pointer; }
.identity-page { min-height: 70vh; padding: 7rem 0; background: linear-gradient(135deg, #f6f9ff, #eef6f1); }
.identity-shell { max-width: 920px; display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: center; }
.identity-intro h1 { margin: .7rem 0 1rem; font-size: clamp(2.5rem, 5vw, 4rem); }
.identity-card { background: #fff; border: 1px solid rgba(20, 40, 70, .09); border-radius: 24px; padding: 2rem; box-shadow: 0 24px 70px rgba(24, 48, 82, .12); }
.identity-links { display: grid; gap: .6rem; margin-top: 1rem; }
.checkbox-row { display: flex; align-items: center; gap: .5rem; margin: 1rem 0; }
.simple-page { min-height: 65vh; }
.narrow-card { max-width: 760px; background: #fff; padding: 3rem; border-radius: 24px; box-shadow: 0 20px 60px rgba(24,48,82,.1); }
.client-project-visual.winsford { background: linear-gradient(135deg, #172554, #2563eb); }
@media (max-width: 900px) {
  .identity-shell { grid-template-columns: 1fr; }
  .nav-account-form, .nav-account-button, .nav-user-name { width: 100%; }
}

/* Administration */
.admin-page { min-height: 68vh; }
.form-page-container { max-width: 860px; }
.admin-form { margin-top: 1.5rem; }
.form-grid.two-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.form-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.5rem; }
.report-table-wrapper { overflow-x: auto; margin-top: 1.5rem; border: 1px solid var(--border, #dfe5ee); border-radius: 18px; background: #fff; box-shadow: 0 12px 34px rgba(15, 23, 42, .07); }
.report-table { width: 100%; border-collapse: collapse; min-width: 860px; }
.report-table th, .report-table td { padding: 1rem; text-align: left; border-bottom: 1px solid #e8edf4; vertical-align: middle; }
.report-table th { background: #f6f8fc; font-size: .84rem; letter-spacing: .03em; text-transform: uppercase; }
.report-table tbody tr:last-child td { border-bottom: 0; }
.table-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .7rem; }
.table-actions form { margin: 0; }
.link-button { border: 0; padding: 0; background: transparent; color: inherit; font: inherit; cursor: pointer; text-decoration: underline; }
.danger-link { color: #b42318; }

@media (max-width: 760px) {
    .form-grid.two-columns { grid-template-columns: 1fr; }
}
.client-browser-showcase {
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 22px;
    background: #ffffff;
    box-shadow: 0 25px 60px rgba(15, 23, 42, 0.15);
}


.hero-contact-bar {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    margin-bottom: 18px;
    padding: 12px 18px;
    background: rgba(255,255,255,0.95);
    border: 1px solid rgba(37,99,235,0.15);
    border-radius: 12px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.05);
    font-size: 0.95rem;
    font-weight: 600;
}

    .hero-contact-bar span {
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .hero-contact-bar i {
        color: #2563eb;
    }

    .hero-contact-bar a {
        color: #0f172a;
        text-decoration: none;
    }

        .hero-contact-bar a:hover {
            color: #2563eb;
            text-decoration: underline;
        }

@media (max-width: 768px) {
    .hero-contact-bar {
        flex-direction: column;
        gap: 10px;
        font-size: 0.9rem;
    }
}
.showcase-browser-top {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 14px 16px;
    background: #eef2f7;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
}

    .showcase-browser-top > span {
        width: 11px;
        height: 11px;
        border-radius: 50%;
        background: #cbd5e1;
    }

.showcase-address {
    flex: 1;
    margin-left: 10px;
    padding: 7px 14px;
    border-radius: 20px;
    background: #ffffff;
    color: #64748b;
    font-size: 0.72rem;
    text-align: center;
}

.showcase-screen {
    padding: 28px;
    background: radial-gradient(circle at top right, rgba(37, 99, 235, 0.12), transparent 38%), linear-gradient(145deg, #ffffff, #f8fafc);
}

.showcase-screen-heading span {
    color: #2563eb;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.14em;
}

.showcase-screen-heading h3 {
    margin: 8px 0 22px;
    color: #0f172a;
    font-size: 1.35rem;
    line-height: 1.3;
}

.showcase-project-list {
    display: grid;
    gap: 10px;
}


.form-row select {
    width: 100%;
    padding: 13px 14px;
    border: 1px solid #d7dde5;
    border-radius: 10px;
    background-color: #ffffff;
    color: #0f172a;
    font-family: inherit;
    font-size: 1rem;
    cursor: pointer;
}

    .form-row select:focus {
        outline: none;
        border-color: #2563eb;
        box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
    }

.showcase-project {
    display: grid;
    grid-template-columns: 42px 1fr auto;
    align-items: center;
    gap: 12px;
    padding: 13px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.9);
    color: #0f172a;
    text-decoration: none;
    transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

    .showcase-project:hover {
        transform: translateY(-2px);
        border-color: rgba(37, 99, 235, 0.35);
        box-shadow: 0 12px 28px rgba(15, 23, 42, 0.1);
    }

    .showcase-project > i:first-child {
        display: grid;
        width: 42px;
        height: 42px;
        place-items: center;
        border-radius: 12px;
        background: #eff6ff;
        color: #2563eb;
        font-size: 1.15rem;
    }

    .showcase-project span {
        display: grid;
        gap: 2px;
    }

    .showcase-project b {
        font-size: 0.9rem;
    }

    .showcase-project small {
        color: #64748b;
        font-size: 0.72rem;
    }

    .showcase-project > i:last-child {
        color: #2563eb;
    }

.about-image {
    position: relative;
}

.experience-badge {
    position: absolute;
    right: -18px;
    bottom: -18px;
}

@media (max-width: 768px) {
    .showcase-screen {
        padding: 18px;
    }

    .showcase-project {
        grid-template-columns: 38px 1fr auto;
        padding: 11px;
    }

        .showcase-project > i:first-child {
            width: 38px;
            height: 38px;
        }

    .experience-badge {
        position: relative;
        right: auto;
        bottom: auto;
        display: inline-flex;
        margin-top: 18px;
    }
}


/* =========================================================
   GOYT FISH BAR PORTFOLIO CARD
   ========================================================= */

.client-project-visual.goyt-fish {
    position: relative;
    display: flex;
    min-height: 290px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: radial-gradient( circle at center, rgba(232, 179, 74, 0.18), transparent 55% ), linear-gradient( 135deg, #0f2b49 0%, #173f66 100% );
    color: #ffffff;
    text-decoration: none;
}

    .client-project-visual.goyt-fish > span {
        margin-bottom: 18px;
        color: #e8b34a;
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 3px;
        text-transform: uppercase;
    }

    .client-project-visual.goyt-fish .fish-icon {
        display: flex;
        width: 74px;
        height: 74px;
        align-items: center;
        justify-content: center;
        margin-bottom: 18px;
        border: 2px solid #e8b34a;
        border-radius: 50%;
        color: #e8b34a;
        font-size: 32px;
    }

    .client-project-visual.goyt-fish h3 {
        margin: 0;
        color: #ffffff;
        font-size: 27px;
        line-height: 1.25;
        text-align: center;
    }

    .client-project-visual.goyt-fish > .bi-arrow-up-right {
        position: absolute;
        top: 20px;
        right: 20px;
        color: #e8b34a;
        font-size: 22px;
        transition: transform 0.25s ease;
    }

    .client-project-visual.goyt-fish:hover > .bi-arrow-up-right {
        transform: translate(4px, -4px);
    }

    .client-project-visual.goyt-fish:hover .fish-icon {
        background: #e8b34a;
        color: #0f2b49;
    }