:root{--bg:#101725;--panel:#151e2e;--ink:#f5f6f4;--muted:#b5bdc9;--green:#00d474;--red:#e44758;--line:#ffffff18}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--green);outline-offset:5px}.wrap{max-width:1240px;margin:auto;padding:0 32px}.site-header{position:sticky;top:0;z-index:10;background:#101725f5;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header-inner{display:flex;align-items:center;justify-content:space-between;height:86px}.brand{display:flex;gap:13px;align-items:center;font-size:20px;font-weight:900;letter-spacing:-.7px}.brand img{width:48px;height:48px;border-radius:50%}.red{color:var(--red)}.green{color:var(--green)}nav{display:flex;gap:34px}nav a{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:1.3px;padding:28px 0}nav a:hover,nav a[aria-current=page]{color:var(--green)}.menu{display:none;border:1px solid var(--line);background:none;color:white;padding:7px 12px}.hero{background-image:linear-gradient(#ffffff03 1px,transparent 1px),linear-gradient(90deg,#ffffff03 1px,transparent 1px);background-size:28px 28px;border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:72px;padding-top:84px;padding-bottom:86px}.eyebrow{font-size:11px;letter-spacing:2.4px;font-weight:800;text-transform:uppercase;color:var(--green);margin:0 0 22px}.tag{display:inline-block;background:var(--red);color:#fff;padding:4px 12px}.hero h1{font-size:clamp(38px,4.7vw,68px);line-height:1.06;font-weight:950;letter-spacing:-2.7px;margin:0 0 28px;text-transform:uppercase}.hero h1 span{display:block}.slogan{font-weight:800;letter-spacing:2px;line-height:1.5;font-size:17px;text-transform:uppercase}.slogan span{display:block}.intro{max-width:540px;color:var(--muted);font-size:17px;margin:28px 0 32px}.hero-art{position:relative;padding:20px}.hero-art:before{content:'';position:absolute;inset:10%;background:#00d47410;filter:blur(55px);border-radius:50%}.hero-art img{display:block;position:relative;width:100%;max-width:450px;margin:auto;border-radius:50%}.actions{display:flex;gap:16px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:22px;border:1px solid var(--green);background:var(--green);color:#07170f;padding:15px 23px;font-size:12px;font-weight:800;letter-spacing:.7px;text-transform:uppercase;cursor:pointer;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-3px);background:#42ed9e}.btn.secondary{background:transparent;border-color:#84909f;color:white}.btn.secondary:hover{border-color:var(--green);color:var(--green)}section.section{padding:86px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:34px}h2{font-size:clamp(28px,3vw,44px);line-height:1.1;letter-spacing:-1.4px;text-transform:uppercase;margin:0}h3{font-size:20px;line-height:1.25;text-transform:uppercase;letter-spacing:-.5px;margin:0 0 15px}.text-link{font-weight:800;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--green);white-space:nowrap}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service{padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .2s}.service:hover{background:var(--panel)}.number{font-size:12px;color:var(--green);display:block;margin-bottom:30px;letter-spacing:2px}.service p{color:var(--muted);font-size:14px;margin:0}.story{background:var(--panel);border-block:1px solid var(--line)}.story-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:center}.story p,.prose p{color:var(--muted)}.story h2{max-width:550px}.cta{padding:72px 0;border-top:1px solid var(--line)}.cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:25px}.cta h2{font-size:clamp(30px,4vw,54px)}.cta h2 span{color:var(--green)}footer{border-top:1px solid var(--line);padding:45px 0 20px;background:#0c121d}.footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:35px}.footer-grid p{color:var(--muted);font-size:13px;margin:13px 0}.contact-line{display:block;margin:0 0 12px;font-size:14px}.contact-line small{display:block;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:1.8px;text-transform:uppercase}.contact-line:hover{color:var(--green)}.copyright{border-top:1px solid var(--line);margin-top:30px;padding-top:18px;font-size:11px;color:#8d98a8}.page-intro{padding:70px 0 48px;border-bottom:1px solid var(--line)}.page-intro h1{font-size:clamp(44px,6vw,78px);line-height:1;letter-spacing:-3px;text-transform:uppercase;margin:0 0 24px}.page-intro p:last-child{max-width:650px;color:var(--muted);font-size:18px}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.detail{padding:35px;background:var(--panel);border:1px solid var(--line)}.detail p{color:var(--muted)}.detail ul{padding-left:20px;color:var(--muted);font-size:14px}.detail .text-link{display:inline-block;margin-top:16px}.prose{max-width:850px}.prose h2{margin:48px 0 22px}.values{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:38px}.value{padding:26px 15px;border:1px solid var(--line);text-align:center;min-width:0}.value h3{font-size:clamp(15px,1.6vw,20px);color:var(--green)}.value p{color:var(--muted);font-size:13px;margin:0}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:100px}.contact-grid .contact-line{font-size:24px;margin-bottom:28px}.contact-grid .contact-line small{font-size:11px}form{background:var(--panel);padding:32px;border:1px solid var(--line)}label{display:block;font-size:12px;font-weight:700;margin-bottom:18px}input,textarea,select{display:block;width:100%;border:1px solid #ffffff28;color:white;background:#101725;padding:12px;margin-top:7px;border-radius:0}textarea{min-height:135px;resize:vertical}.form-note{color:var(--muted);font-size:12px;margin:20px 0 0}.skip{position:absolute;top:-80px;left:15px;background:var(--green);color:black;padding:10px;z-index:100}.skip:focus{top:10px}@media(max-width:900px){.hero-grid{gap:25px}.hero h1{font-size:48px}.hero-art{padding:0}.service-grid{grid-template-columns:repeat(2,1fr)}.story-grid,.contact-grid{gap:40px}.values{grid-template-columns:repeat(2,1fr)}.brand{font-size:17px}.wrap{padding-inline:24px}}@media(max-width:640px){.header-inner{height:72px}.brand{font-size:16px}.brand img{width:38px;height:38px}.menu{display:block}nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--bg);padding:15px 24px;border-bottom:1px solid var(--line)}nav.open{display:flex;flex-direction:column;gap:0}nav a{padding:12px 0}.hero-grid{grid-template-columns:1fr;padding-top:46px;padding-bottom:48px;gap:38px}.hero h1{font-size:clamp(36px,9.8vw,56px);letter-spacing:-1.7px}.hero-art img{max-width:270px}.intro{font-size:16px}.slogan{font-size:14px}.section-head{align-items:start;flex-direction:column}.service-grid,.detail-grid,.story-grid,.contact-grid,.footer-grid{grid-template-columns:1fr}.service{padding:25px}.number{margin-bottom:20px}section.section{padding:52px 0}.story-grid{gap:20px}.cta .wrap{align-items:start;flex-direction:column}.cta{padding:46px 0}.footer-grid{gap:22px}.page-intro{padding-top:45px}.page-intro h1{letter-spacing:-2px}.contact-grid{gap:30px}form{padding:24px}.contact-grid .contact-line{font-size:21px}.detail{padding:26px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.questionnaire-wrap{max-width:980px}.questionnaire-heading{margin-bottom:30px}.questionnaire-heading h2{font-size:28px}.questionnaire-heading p,.question-help{color:var(--muted);font-size:14px}#project-form{padding:0;background:none;border:0}.question-section{border:1px solid var(--line);background:var(--panel);margin-bottom:16px}.question-section summary{display:flex;align-items:center;gap:18px;padding:24px;font-size:20px;font-weight:800;cursor:pointer;list-style:none;line-height:1.3}.question-section summary::-webkit-details-marker{display:none}.question-section summary:focus-visible{outline:3px solid var(--green)}.question-number{color:var(--green);font-size:13px;letter-spacing:1px}.expand-icon{margin-left:auto;color:var(--green);font-size:26px;font-weight:400}.question-section[open] .expand-icon{transform:rotate(45deg)}.question-section[open] summary{border-bottom:1px solid var(--line)}.question-body{padding:28px}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.question-body fieldset{border:0;padding:0;margin:0 0 24px;min-width:0}.question-body legend{font-size:12px;font-weight:700;margin-bottom:12px}.check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.check-grid label{display:flex;align-items:start;gap:9px;margin:0;font-weight:400;font-size:13px;cursor:pointer}.check-grid input{width:17px;height:17px;flex:0 0 17px;margin:2px 0 0;accent-color:var(--green)}.question-hint{color:var(--muted);font-size:12px;margin:-10px 0 24px}.question-body textarea{min-height:95px}.question-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:28px}.question-help a{color:var(--green);text-decoration:underline}nav{gap:24px}@media(max-width:900px){nav{gap:16px}nav a{font-size:10px}.check-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.field-pair{grid-template-columns:1fr;gap:0}.question-body{padding:22px}.question-section summary{font-size:17px;padding:20px;gap:12px}.check-grid{grid-template-columns:1fr 1fr}.questionnaire-heading h2{font-size:24px}.question-actions .btn{width:100%}}
/* Brand refinement: restrained color, consistent rhythm and balanced columns. */
:root{--bg:#10151d;--panel:#171e27;--ink:#f5f5f2;--muted:#c0c5cb;--green:#48ce8b;--red:#ed5964;--line:#ffffff25}
.brand{letter-spacing:-.4px}.brand .red,.brand .green{color:var(--ink)}nav a[aria-current=page]{color:var(--green)}
.hero-grid{grid-template-columns:1fr 1fr;gap:64px;padding-top:72px;padding-bottom:72px}.hero h1{font-size:clamp(38px,4.45vw,64px);letter-spacing:-2px;line-height:1.12}.hero h1 .red,.hero h1 .green{color:var(--ink)}.hero h1 span:last-child{color:var(--green)}.hero-art{display:flex;align-items:center;justify-content:center}.hero-art img{max-width:430px}.hero-art:before{background:transparent}.hero .slogan{font-size:16px;letter-spacing:1.5px}.hero .slogan span{color:var(--ink)}.hero .slogan .green{color:var(--green)}.intro{font-size:16px;max-width:510px}.eyebrow.tag{background:transparent;border-left:3px solid var(--red);padding:3px 12px;color:var(--muted)}
.section-head{align-items:center}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service{display:flex;flex-direction:column;padding:32px;min-height:265px}.service h3{font-size:19px;min-height:48px;line-height:1.3}.service .number{margin-bottom:22px}.service p{font-size:14px}.story-grid{grid-template-columns:1fr 1fr;gap:64px}.story h2{font-size:36px;line-height:1.2}.story p:first-child{margin-top:0}.cta .wrap{display:grid;grid-template-columns:1fr 1fr;gap:64px}.cta .btn{justify-self:end}.cta h2{font-size:44px;line-height:1.15}.footer-grid{grid-template-columns:1fr 1fr 1fr;align-items:start;gap:48px}.footer-grid .brand{font-size:16px}.footer-grid .brand img{width:40px;height:40px}.footer-grid .slogan{font-size:14px;letter-spacing:1px;margin-top:0}.footer-grid .contact-line{font-size:14px}.footer-grid .contact-line small{color:var(--green)}
.page-intro{text-align:center;padding-top:64px;padding-bottom:44px}.page-intro h1{font-size:clamp(42px,5vw,68px);line-height:1.12;letter-spacing:-2px}.page-intro h1 .green{color:var(--ink)}.page-intro h1:after{content:'';display:block;width:64px;height:3px;background:var(--red);margin:28px auto 0}.page-intro .eyebrow{color:var(--green)}.page-intro p:last-child{margin:22px auto 0;max-width:660px;font-size:16px}.detail-grid{gap:24px}.detail{padding:34px;display:flex;flex-direction:column}.detail h2{color:var(--ink);font-size:25px!important;line-height:1.25;min-height:64px}.detail .text-link{margin-top:auto;padding-top:20px}.prose{margin-inline:auto}.prose h2{color:var(--green);font-size:30px}.values{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.value{padding:28px 16px}.value h3{color:var(--ink)}.value:before{content:'';display:block;width:24px;height:2px;background:var(--green);margin:0 auto 18px}.contact-grid{grid-template-columns:1fr 1fr;gap:64px;align-items:start}.contact-grid .contact-line small{color:var(--green)}
.questionnaire-wrap{max-width:1000px}.questionnaire-heading{text-align:center;margin-bottom:32px}.questionnaire-heading h2{font-size:26px;letter-spacing:-.7px;color:var(--ink)}.questionnaire-heading p{max-width:620px;margin:14px auto 0}.question-section{background:var(--panel);border-color:var(--line);margin-bottom:18px}.question-section summary{padding:24px 28px;font-size:19px;color:var(--ink)}.question-number{color:var(--green);min-width:24px}.question-body{padding:30px}.question-body label,.question-body legend{font-size:13px;color:var(--ink);font-weight:600}.question-body input,.question-body textarea,.question-body select{background:#10151d;border-color:#ffffff30;color:var(--ink)}.question-body label{margin-bottom:24px}.question-body fieldset{margin-bottom:28px}.check-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}.check-grid label{font-weight:400;margin:0;color:var(--muted)}.question-hint{margin-top:-14px}.question-actions{display:grid;grid-template-columns:1fr 1fr;gap:20px}.question-actions .btn{width:100%}.question-help{text-align:center;margin-top:28px}.form-note{line-height:1.7}.question-body textarea{min-height:112px}.text-link{color:var(--green)}
@media(max-width:1000px){.hero-grid,.story-grid,.contact-grid{gap:36px}.hero h1{font-size:46px}.service{padding:24px}.service h3{font-size:17px}.footer-grid{gap:26px}.brand{font-size:17px}nav{gap:16px}.cta h2{font-size:36px}}
@media(max-width:800px) and (min-width:641px){.header-inner{flex-wrap:wrap;height:auto;padding-top:16px;justify-content:center;gap:0}.header-inner .brand{width:100%;justify-content:center}nav a{padding:15px 0}.hero h1{font-size:40px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:last-child{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px}.values{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.hero-grid{grid-template-columns:1fr;text-align:center;padding-block:44px;gap:32px}.hero h1{font-size:clamp(36px,10vw,54px);letter-spacing:-1.5px}.hero .eyebrow.tag{border-left:0;border-bottom:2px solid var(--red);padding-bottom:9px}.hero .slogan{font-size:13px;letter-spacing:1.2px}.hero .intro{margin-inline:auto}.hero .actions{justify-content:center}.hero-art img{max-width:245px}.section-head{align-items:center;text-align:center}.service-grid{grid-template-columns:1fr}.service{min-height:0;padding:28px}.service h3{min-height:0}.story-grid,.contact-grid,.footer-grid,.cta .wrap{grid-template-columns:1fr;gap:28px}.story h2{font-size:30px}.cta .wrap{text-align:center}.cta .btn{justify-self:center}.cta h2{font-size:34px}.footer-grid{text-align:center}.footer-grid .brand{justify-content:center}.footer-grid .contact-line{margin-bottom:20px}.copyright{text-align:center}.page-intro{padding-top:44px;padding-bottom:36px}.page-intro h1{font-size:44px;letter-spacing:-1.5px}.page-intro p:last-child{font-size:15px}.detail h2{min-height:0}.values{grid-template-columns:1fr 1fr;gap:12px}.value{padding:24px 12px}.questionnaire-heading h2{font-size:23px;line-height:1.3}.question-section summary{padding:21px 18px;font-size:16px;gap:10px}.question-body{padding:22px 18px}.check-grid{gap:12px}.question-actions{grid-template-columns:1fr;gap:12px}.question-help{text-align:left}.contact-grid>div{text-align:center}.contact-grid .slogan{font-size:14px}}
/* Requested red headings on the project questionnaire. */
body:has(#project-form) .page-intro h1,
body:has(#project-form) .page-intro h1 .green,
body:has(#project-form) .questionnaire-heading h2{color:var(--red)}
/* Home headline colors requested in browser comments. */
.hero h1 span:nth-child(1),.hero h1 span:nth-child(3){color:var(--green)}
.hero h1 span:nth-child(2),.hero h1 span:nth-child(4){color:var(--red)}
.section-head h2,.section-head h2 .green{color:var(--red)}
.cta h2 span{color:var(--red)}

.footer-grid .slogan .green{color:var(--red)}
/* Services page: red titles, green navigation accents, balanced cards. */
.services-page .page-intro h1,.services-page .page-intro h1 .green{color:var(--red)}
.services-page .detail h2{color:var(--red);min-height:66px}
.services-page .detail .number{color:var(--green);border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:22px}
.services-page .detail{scroll-margin-top:110px;border-top:3px solid var(--green);padding:34px;gap:0}
.services-page .detail p{margin:18px 0;color:var(--muted)}
.services-page .detail ul{margin:0 0 24px;padding-left:20px}
.services-page .detail li{padding:4px 0}.services-page .detail li::marker{color:var(--green)}
.services-page .detail .text-link{border-top:1px solid var(--line);padding-top:20px;line-height:1.6;white-space:normal}
.services-page .detail-grid{align-items:stretch;grid-auto-rows:1fr}
@media(max-width:640px){.services-page .detail{padding:26px;scroll-margin-top:90px}.services-page .detail h2{min-height:0}.services-page .detail-grid{grid-auto-rows:auto}}
/* About page: shared red headings and green brand accents. */
.about-page .page-intro h1,.about-page .page-intro h1 .green,.about-page .prose h2{color:var(--red)}
.about-page .prose h2{border-bottom:1px solid var(--line);padding-bottom:18px}
.about-page .prose{max-width:850px}.about-page .prose p{line-height:1.85}
.about-page .values{margin-top:48px;align-items:stretch}
.about-page .value{border-top:3px solid var(--green);display:flex;flex-direction:column;align-items:center}
.about-page .value h3{color:var(--red)}
.about-page .value:before{background:var(--green)}
.about-page .value p{max-width:210px}
/* Contact page: consistent red headings and green contact accents. */
.contact-page .page-intro h1,.contact-page .page-intro h1 .green,.contact-page #contact-form h2{color:var(--red)}
.contact-page .contact-grid>.contact-info{align-self:start}
.contact-page .contact-grid .contact-line{border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:24px}
.contact-page .contact-grid .contact-line small{color:var(--green);margin-bottom:7px}
.contact-page #contact-form{border-top:3px solid var(--green)}
.contact-page #contact-form h2{border-bottom:1px solid var(--line);padding-bottom:20px}
.contact-page #contact-form label{color:var(--green)}
.contact-page #contact-form input,.contact-page #contact-form textarea,.contact-page #contact-form select{color:var(--ink)}
.contact-page .contact-grid .slogan{color:var(--ink)}
.contact-page .contact-grid .slogan .green{color:var(--red)}
/* Project questionnaire: red section titles with green form accents. */
body:has(#project-form) .question-section summary{color:var(--red)}
body:has(#project-form) .question-section{border-top:3px solid var(--green)}
body:has(#project-form) .question-number,body:has(#project-form) .expand-icon{color:var(--green)}
body:has(#project-form) .question-body>label,body:has(#project-form) .field-pair>label,body:has(#project-form) .question-body legend{color:var(--green)}
body:has(#project-form) .question-body input,body:has(#project-form) .question-body textarea,body:has(#project-form) .question-body select{color:var(--ink)}
body:has(#project-form) .check-grid label{color:var(--muted)}
body:has(#project-form) .question-section[open] summary{border-bottom-color:var(--line)}
.payments-page .detail .btn{margin-top:auto}.payments-page .detail h2{min-height:0}.payments-page .detail p{margin-bottom:28px}nav{gap:18px}nav a{font-size:11px}@media(min-width:641px) and (max-width:1050px){.header-inner{height:auto;min-height:86px;flex-wrap:wrap;justify-content:center;padding-top:14px}.header-inner .brand{width:100%;justify-content:center}nav a{padding:14px 0}}@media(max-width:640px){nav a{font-size:12px}}

.form-trap{display:none!important}
