/* Website design service, using the portfolio's shared visual system. */
.web-hero{display:grid;grid-template-columns:1fr 1.12fr;position:relative;padding-top:25px;gap:0 15px}
.web-breadcrumb{grid-column:1/-1;display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:11px;color:#7792a3;margin-bottom:49px}
.web-breadcrumb a:hover{color:var(--cyan)}.web-breadcrumb [aria-current]{color:#b8ccd8}
.web-hero-copy{position:relative;z-index:2;padding-bottom:48px;min-width:0}
.web-hero h1{font-size:clamp(50px,5.25vw,75px);line-height:1.04;letter-spacing:-.055em}
.web-hero .eyebrow{font-size:10px;margin-bottom:22px}
.web-lead{color:#e1edf2;font-size:20px;line-height:1.5;font-weight:500;margin-top:25px}
.web-intro{font-size:14px;line-height:1.9;margin-top:14px;max-width:425px}
.web-actions{display:flex;align-items:center;gap:25px;margin-top:29px;flex-wrap:wrap}
.web-actions .button{font-size:12px;gap:19px;padding:15px 19px}
.web-secondary{font-size:12px;color:#d3e3eb;display:flex;gap:14px;align-items:center}.web-secondary:hover{color:var(--cyan)}
.web-hero-note{font-size:10px;display:flex;align-items:center;gap:8px;margin-top:17px}.web-hero-note>span{height:5px;width:5px;background:var(--cyan);border-radius:50%}
.web-hero-art{position:relative;min-width:0;display:flex;align-items:center;isolation:isolate;margin-right:-30px;margin-left:-48px;padding-bottom:30px}
.web-hero-art:before{content:'';position:absolute;inset:12% 0 15%;z-index:-1;background:radial-gradient(ellipse,#09769730,transparent 67%)}
.web-hero-art>img{width:100%;max-width:none;margin-left:0;mix-blend-mode:lighten;mask-image:radial-gradient(ellipse,#000 50%,#000c 67%,transparent 85%);animation:levitate 9s ease-in-out infinite}
.web-hero-art figcaption{position:absolute;right:23px;bottom:63px;display:flex;align-items:center;gap:13px;background:#0a202eec;backdrop-filter:blur(14px);border:1px solid #2a5668;border-radius:7px;padding:13px 18px;font-size:11px;line-height:1.8;color:var(--muted);box-shadow:0 15px 45px #0003}
.web-hero-art figcaption>span:first-child{width:27px;height:27px;color:var(--cyan)}.web-hero-art figcaption strong{display:block;color:var(--text);font-size:12px}
.web-proof{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:30px;align-items:center;border-top:1px solid var(--line);padding:27px 0 31px}
.web-proof p{display:flex;align-items:center;gap:12px;line-height:1.5}.web-proof strong{color:var(--text);font-size:24px;white-space:nowrap;letter-spacing:-.045em}.web-proof p>span{font-size:10px;max-width:110px}.web-proof>a{font-size:11px;color:var(--cyan);display:flex;align-items:center;gap:18px}.web-proof>a>span{font-size:24px}
.web-value{background:linear-gradient(120deg,#0c1e2b,#091823);border-block:1px solid #213b486b}
.web-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.web-feature{position:relative;border:1px solid #24414f;background:#0b202d;padding:30px;border-radius:8px;transition:border-color .3s,background .3s}
.web-feature:hover{border-color:#3a7584;background:#0e2735}.web-feature-icon{display:block;width:28px;height:28px;color:var(--cyan);margin-bottom:25px}.web-feature-number{position:absolute;top:30px;right:28px;font-size:11px;color:#63899c;letter-spacing:.1em}
.web-feature h3{font-size:17px;letter-spacing:-.025em;margin-bottom:12px;line-height:1.35}.web-feature p{font-size:13px;line-height:1.9}
.web-option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.web-option{position:relative;display:flex;flex-direction:column;border:1px solid #2a4351;border-radius:10px;padding:30px;background:linear-gradient(150deg,#10263388,#0a1a26)}
.web-option-featured{border-color:#249ba7;background:radial-gradient(ellipse at 100% 0%,#1475824d,transparent 65%),#0e2834;box-shadow:0 0 36px #00d0da08}
.web-option-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:30px;color:#8ba8b9;font-size:9px;font-weight:700;letter-spacing:.08em}.web-option-top>span:last-child{display:block;width:25px;height:25px;flex-shrink:0;color:var(--cyan)}
.web-option-featured .web-option-top{color:#93f4f3}.web-option h3{font-size:28px;letter-spacing:-.045em;line-height:1.2;margin-bottom:18px}.web-option>p{font-size:13px;line-height:1.85;min-height:96px}
.web-option-format{font-size:9px;color:var(--cyan);letter-spacing:.09em;margin-top:24px;padding:18px 0;border-top:1px solid #2c4755}
.web-option ul{margin:0;padding:0;list-style:none}.web-option li{font-size:12px;line-height:1.7;color:#c3d2dc;padding-left:20px;position:relative;margin-bottom:13px}.web-option li:before{content:'✓';color:var(--cyan);position:absolute;left:0}
.web-option-bottom{padding-top:27px;margin-top:auto}.web-option-bottom p{font-size:14px;font-weight:650;color:#f0f7fa;margin-bottom:17px}.web-option-bottom .button{width:100%;justify-content:space-between;gap:12px;font-size:11px;padding:14px 15px}
.web-scope-note{display:flex;align-items:center;gap:20px;margin-top:26px;padding:22px 25px;border:1px solid #213c4b;border-radius:8px}.web-scope-note>span{display:block;color:var(--cyan);width:27px;height:27px;flex-shrink:0}.web-scope-note p{font-size:12px;line-height:1.85;flex:1}.web-scope-note strong{display:block;font-size:13px;color:#dce7ef;margin-bottom:4px}.web-scope-note a{flex-shrink:0;color:var(--cyan);font-size:12px;font-weight:650;display:flex;gap:18px}
.web-work{background:#0a1b27;border-block:1px solid #1e3644}.web-work .section-heading .text-link{font-size:12px;margin-bottom:7px}.web-projects .project-image{aspect-ratio:1.3}.web-projects .project-meta h3{font-size:16px}.web-projects .project-meta p{font-size:9px}
.web-process{display:grid;grid-template-columns:1fr 1.15fr;gap:85px;align-items:start}.web-process-intro>p:not(.eyebrow){font-size:14px;margin-top:25px;line-height:1.9;max-width:370px}.web-process h2{font-size:40px;line-height:1.18}
.web-designer{display:flex;align-items:center;gap:14px;margin-top:32px}.web-designer img{height:52px;width:52px;object-fit:cover;object-position:50% 22%;border-radius:50%;border:1px solid #416271}.web-designer strong{display:block;font-size:12px}.web-designer span{display:block;font-size:10px;color:var(--muted);margin-top:2px}
.web-steps{list-style:none;padding:0;margin:0}.web-steps li{display:grid;grid-template-columns:43px 1fr;gap:24px;position:relative;padding-bottom:36px}.web-steps li:last-child{padding-bottom:0}.web-steps li:not(:last-child):after{content:'';position:absolute;left:21px;top:48px;bottom:7px;width:1px;background:linear-gradient(#326173,#1b3442)}
.web-step-number{position:relative;z-index:1;display:grid;place-items:center;width:43px;height:43px;border:1px solid #326274;border-radius:50%;color:var(--cyan);background:#102936;font-size:12px;font-weight:700}.web-steps h3{font-size:19px;letter-spacing:-.025em;line-height:1.4;margin:6px 0 12px}.web-steps p{font-size:13px;line-height:1.9}.web-step-result{display:block;font-size:10px;color:#77cbd0;margin-top:13px}
.web-next{display:flex;gap:60px;align-items:center;justify-content:space-between;padding:35px 40px;border-block:1px solid #34505e;background:linear-gradient(100deg,#102b39,#0a1b27);border-radius:8px}.web-next .eyebrow{font-size:9px;margin-bottom:14px}.web-next h2{font-size:28px}.web-next p:not(.eyebrow){font-size:13px;max-width:630px;margin-top:16px}.web-next .button{flex-shrink:0;font-size:12px}
.web-faq{padding-top:95px}.web-contact{padding-bottom:85px}.web-contact .contact-panel{padding:50px}.web-contact h2{font-size:38px}.web-contact .contact-panel p:not(.eyebrow){line-height:1.95}
@media(min-width:1500px){.web-hero-art{margin-right:-40px}.web-hero h1{font-size:78px}.web-breadcrumb{margin-bottom:58px}.web-hero-copy{padding-bottom:58px}}
@media(max-width:1100px){.web-hero-art{margin-left:-30px;margin-right:-12px}.web-hero h1{font-size:59px}.web-hero-art figcaption{right:5px;bottom:85px}.web-feature,.web-option{padding:25px}.web-option h3{font-size:25px}.web-option>p{min-height:119px}.web-proof{gap:15px}.web-proof p{display:block}.web-proof p>span{display:block;max-width:none;font-size:10px;margin-top:3px}.web-proof strong{font-size:23px}.web-process{gap:45px}.web-process h2{font-size:34px}.web-next{gap:30px;padding:32px}.web-option-top{letter-spacing:.02em;font-size:8px}}
@media(max-width:850px){.web-hero{grid-template-columns:1fr 1fr;gap:0}.web-breadcrumb{margin-bottom:36px;font-size:10px}.web-hero h1{font-size:51px}.web-lead{font-size:17px}.web-intro{font-size:12px}.web-actions{gap:15px}.web-hero-art{margin-left:-25px;margin-right:-10px;align-self:center}.web-hero-art>img{width:100%}.web-hero-art figcaption{bottom:-35px;right:2px;padding:10px 13px;gap:10px;font-size:10px}.web-hero-art figcaption strong{font-size:10px}.web-hero-art figcaption>span:first-child{width:22px;height:22px}.web-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.web-option-grid{gap:12px}.web-option{padding:21px 18px}.web-option h3{font-size:22px}.web-option>p{font-size:12px;min-height:138px}.web-option-top>span:last-child{display:none}.web-option li{font-size:11px}.web-option-format{font-size:8px;letter-spacing:.02em}.web-option-bottom .button{font-size:10px;padding:12px 10px}.web-scope-note{align-items:flex-start;flex-wrap:wrap}.web-scope-note a{margin-left:47px}.web-scope-note p{flex-basis:calc(100% - 50px)}.web-projects{grid-template-columns:repeat(3,minmax(0,1fr))}.web-projects .project-meta h3{font-size:14px}.web-projects .project-index{display:none}.web-process{gap:30px}.web-process h2{font-size:29px}.web-steps li{gap:15px}.web-steps h3{font-size:17px}.web-next{align-items:flex-start;flex-direction:column;gap:24px}.web-next .button{font-size:11px}.web-contact .contact-panel{padding:35px}.web-contact h2{font-size:31px}}
@media(max-width:640px){.web-hero{display:flex;flex-direction:column;padding-top:20px;overflow:clip}.web-breadcrumb{font-size:9px;gap:8px;margin-bottom:34px}.web-hero-copy{padding-bottom:0}.web-hero .eyebrow{font-size:9px;margin-bottom:21px}.web-hero h1{font-size:clamp(48px,12.8vw,69px)}.web-lead{font-size:18px;margin-top:24px}.web-intro{font-size:13px;max-width:440px}.web-actions{gap:20px;margin-top:25px}.web-actions .button{font-size:11px;padding:14px 15px;gap:17px}.web-secondary{font-size:11px}.web-hero-note{font-size:9px}.web-hero-art{margin:16px 0 0;padding-bottom:20px;align-self:stretch}.web-hero-art>img{width:112%;margin-left:-6%}.web-hero-art figcaption{bottom:17px;right:5px;font-size:9px;padding:9px 12px}.web-hero-art figcaption strong{font-size:10px}.web-proof{grid-template-columns:1fr 1fr 1fr;gap:13px;padding:23px 0;margin-top:0}.web-proof strong{font-size:22px}.web-proof p>span{font-size:9px;max-width:105px}.web-proof>a{grid-column:1/-1;border-top:1px solid var(--line);padding-top:16px;margin-top:6px;justify-content:space-between}.web-feature-grid{gap:12px}.web-feature{padding:22px 18px}.web-feature-icon{width:25px;height:25px;margin-bottom:22px}.web-feature-number{top:24px;right:17px;font-size:9px}.web-feature h3{font-size:15px}.web-feature p{font-size:12px;line-height:1.8}.web-option-grid{grid-template-columns:1fr;gap:20px}.web-option{padding:27px}.web-option-top{font-size:9px;margin-bottom:23px}.web-option-top>span:last-child{display:block}.web-option h3{font-size:30px}.web-option>p{font-size:13px;min-height:0}.web-option-format{font-size:9px;letter-spacing:.08em;margin-top:23px}.web-option li{font-size:13px}.web-option-bottom .button{font-size:12px;padding:15px 17px}.web-scope-note{padding:23px 20px;gap:13px}.web-scope-note>span{width:23px;height:23px}.web-scope-note p{flex-basis:calc(100% - 38px);font-size:12px}.web-scope-note a{margin-left:36px}.web-work .text-link{margin-top:22px}.web-projects{grid-template-columns:1fr;gap:29px}.web-projects .project-image{aspect-ratio:1.45}.web-projects .project-meta h3{font-size:17px}.web-projects .project-index{display:block}.web-projects .project-meta p{font-size:9px}.web-process{display:block}.web-process h2{font-size:32px}.web-process-intro>p:not(.eyebrow){font-size:13px}.web-designer{margin-top:26px}.web-steps{margin-top:39px}.web-steps li{gap:18px;padding-bottom:29px}.web-steps h3{font-size:18px}.web-steps p{font-size:13px}.web-next{padding:28px 24px;gap:22px}.web-next h2{font-size:27px}.web-next p:not(.eyebrow){font-size:13px}.web-next .button{font-size:11px;padding:13px;gap:16px;max-width:100%}.web-faq{padding-top:60px}.web-contact{padding-bottom:55px}.web-contact .contact-panel{padding:30px 25px}.web-contact h2{font-size:29px}.web-contact .contact-orb{margin-top:0}}
@media(max-width:380px){.web-feature-grid{grid-template-columns:1fr}.web-feature h3{font-size:17px}.web-hero h1{font-size:47px}.web-option{padding:24px}.web-next .button{font-size:10px}}

