/* Unified 2026 service catalogue: services + Switch Store, one clear destination flow. */
#services.service-catalog-section{--service-gold:#d4b08a;padding-top:96px;padding-bottom:110px;scroll-margin-top:86px}
#services .service-section-head{max-width:860px;margin-bottom:38px}
#services .service-section-copy{max-width:760px}
#services .svc-grid{display:block!important;max-width:1180px;margin-inline:auto}

/* Top service selector: one strong navigation rail, not three disconnected cards. */
.service-hub-nav{
 display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
 border-block:1px solid color-mix(in srgb,var(--line) 92%,transparent);
 background:color-mix(in srgb,var(--surface) 24%,transparent);
 backdrop-filter:blur(8px);
}
.service-hub-tab{
 appearance:none;position:relative;min-height:168px;padding:24px 24px 22px;
 display:grid;grid-template-columns:auto 42px minmax(0,1fr) auto;grid-template-rows:auto 1fr;
 gap:14px 14px;align-items:start;text-align:start;
 border:0;border-inline-start:1px solid color-mix(in srgb,var(--line) 82%,transparent);
 background:transparent;color:var(--text);cursor:pointer;
 transition:background .28s ease,color .28s ease,box-shadow .28s ease;
}
.service-hub-tab:first-child{border-inline-start:0}
.service-hub-tab::after{
 content:"";position:absolute;inset-inline:20px;bottom:-1px;height:2px;
 background:var(--service-gold);transform:scaleX(0);transform-origin:center;
 transition:transform .32s var(--motion-ease);
}
.service-hub-tab:hover{background:color-mix(in srgb,var(--surface) 58%,transparent)}
.service-hub-tab.is-active{
 background:linear-gradient(180deg,color-mix(in srgb,var(--service-gold) 13%,transparent),color-mix(in srgb,var(--surface) 28%,transparent));
 box-shadow:inset 0 1px 0 color-mix(in srgb,var(--service-gold) 24%,transparent);
 color:var(--text);
}
.service-hub-tab.is-active::after{transform:scaleX(1)}
.service-hub-number{
 grid-column:1;grid-row:1;
 color:color-mix(in srgb,var(--signal) 52%,var(--text-muted));
 font:600 11px/1 var(--font-mono);letter-spacing:.08em;padding-top:4px
}
.service-hub-icon{
 grid-column:2;grid-row:1;width:38px;height:38px;border-radius:10px;
 display:grid;place-items:center;color:var(--signal);
 background:color-mix(in srgb,var(--signal) 9%,transparent);
 border:1px solid color-mix(in srgb,var(--signal) 18%,transparent)
}
.service-hub-icon svg{width:19px;height:19px}
.service-hub-tab-copy{grid-column:1/4;grid-row:2;display:block;align-self:end}
.service-hub-tab-copy strong{
 display:block;font-size:clamp(18px,1.75vw,23px);font-weight:600;line-height:1.45;margin-bottom:8px
}
.service-hub-tab-copy small{
 display:block;color:var(--text-muted);font-size:12.2px;line-height:1.75;max-width:300px
}
.service-hub-tab-arrow{
 grid-column:4;grid-row:1;width:32px;height:32px;border-radius:9px;
 display:grid;place-items:center;color:var(--text-muted);
 border:1px solid color-mix(in srgb,var(--line) 88%,transparent);
 transition:transform .28s ease,color .28s ease,border-color .28s ease,background .28s ease
}
.service-hub-tab.is-active .service-hub-number,.service-hub-tab.is-active .service-hub-icon{color:var(--service-gold)}
.service-hub-tab.is-active .service-hub-icon{border-color:color-mix(in srgb,var(--service-gold) 34%,var(--line));background:color-mix(in srgb,var(--service-gold) 9%,transparent)}
.service-hub-tab.is-active .service-hub-tab-arrow{
 color:var(--service-gold);border-color:color-mix(in srgb,var(--service-gold) 40%,var(--line));
 background:color-mix(in srgb,var(--service-gold) 8%,transparent);transform:translateX(-2px)
}
html[dir=ltr] .service-hub-tab.is-active .service-hub-tab-arrow{transform:translateX(2px)}

/* Active service view. */
.service-hub-panel{
 margin-top:34px;padding-top:34px;border-top:2px solid color-mix(in srgb,var(--service-gold) 72%,var(--line));
 animation:service-panel-arrive .42s var(--motion-ease) both
}
@keyframes service-panel-arrive{
 from{opacity:.45;transform:translateY(10px)}
 to{opacity:1;transform:none}
}
.service-hub-panel-head{
 display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:end;
 margin-bottom:34px
}
.service-hub-panel-kicker{
 display:block;color:var(--service-gold);font:700 10px/1.4 var(--font-mono);letter-spacing:.13em;margin-bottom:10px
}
.service-hub-panel-head h3{
 margin:0 0 10px;font-size:clamp(29px,4vw,48px);font-weight:500;line-height:1.28;letter-spacing:-.025em
}
.service-hub-panel-head p{
 margin:0;color:var(--text-muted);font-size:14px;line-height:1.95;max-width:720px
}

/* Three concrete choices inside the selected service. */
.service-offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.service-offer-grid.is-store-grid{grid-template-columns:minmax(0,520px);justify-content:start}
.service-offer-grid.is-store-grid .service-offer-media{aspect-ratio:16/9}
.service-offer-grid.is-store-grid .service-offer h4{font-size:clamp(22px,2.3vw,30px)}
.service-offer-grid.is-store-grid .service-offer p{max-width:520px}

.service-offer{min-width:0;display:flex;flex-direction:column}
.service-offer-media{
 position:relative;aspect-ratio:16/10;margin:0 0 17px;overflow:hidden;border-radius:17px;
 border:1px solid color-mix(in srgb,var(--line) 100%,transparent);
 box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--text) 3%,transparent),0 14px 34px rgba(0,0,0,.12);
 background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 92%,var(--bg)),color-mix(in srgb,var(--bg) 94%,var(--surface)))
}
.service-offer-media::after{
 content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;
 box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)
}
.service-offer-media img{display:block;width:100%;height:100%;transition:transform .5s var(--motion-ease)}
.service-offer-media.is-photo img{object-fit:cover;object-position:center}
.service-offer-media.is-ui{padding:14px;background:color-mix(in srgb,var(--surface) 86%,var(--bg))}
.service-offer-media.is-ui img{
 object-fit:contain;border-radius:10px;background:var(--surface);
 box-shadow:0 9px 24px rgba(0,0,0,.16)
}
.service-offer:hover .service-offer-media.is-photo img{transform:scale(1.018)}
.service-offer:hover .service-offer-media.is-ui img{transform:translateY(-2px)}
.service-offer-index{
 position:absolute;top:11px;inset-inline-start:11px;z-index:3;height:27px;min-width:27px;padding-inline:7px;
 display:grid;place-items:center;border-radius:8px;
 background:color-mix(in srgb,var(--bg) 78%,transparent);backdrop-filter:blur(8px);
 color:var(--text-muted);font:600 9.5px/1 var(--font-mono);letter-spacing:.06em
}
.service-offer-body{display:flex;flex-direction:column;flex:1}
.service-offer-topline{
 display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:9px;
 color:var(--signal);font:600 9.5px/1.55 var(--font-mono);letter-spacing:.03em
}
.service-offer-topline small{
 color:var(--text-dim);font:500 9.5px/1.55 var(--font-mono);text-align:end
}
.service-offer h4{
 margin:0 0 9px;font-size:clamp(19px,1.8vw,24px);font-weight:600;line-height:1.45;letter-spacing:-.015em
}
.service-offer p{
 margin:0 0 18px;color:var(--text-muted);font-size:12.8px;line-height:1.85;flex:1
}

/* One button language across all service actions. */
.service-offer-request,.service-store-link{
 appearance:none;align-self:flex-start;display:inline-flex;align-items:center;gap:10px;min-height:40px;padding:9px 12px;text-decoration:none;
 border:1px solid color-mix(in srgb,var(--line) 90%,transparent);border-radius:10px;
 background:color-mix(in srgb,var(--surface) 38%,transparent);color:var(--text);
 font-size:12px;font-weight:650;cursor:pointer;
 transition:transform .22s ease,border-color .22s ease,color .22s ease,background .22s ease
}
.service-offer-request:hover,.service-store-link:hover{
 transform:translateY(-1px);border-color:color-mix(in srgb,var(--signal) 55%,var(--line));
 color:var(--signal);background:color-mix(in srgb,var(--signal) 7%,transparent)
}
.service-offer-request.is-primary,.service-store-link.is-primary{
 align-self:end;min-height:44px;padding:11px 16px;
 border-color:var(--signal);background:var(--signal);color:var(--bg);
 box-shadow:0 12px 28px color-mix(in srgb,var(--signal) 18%,transparent)
}
.service-offer-request.is-primary:hover,.service-store-link.is-primary:hover{
 color:var(--bg);background:color-mix(in srgb,var(--signal) 88%,white);transform:translateY(-2px)
}
.service-arrow{
 width:21px;height:21px;border-radius:6px;display:grid;place-items:center;
 background:color-mix(in srgb,var(--signal) 9%,transparent);color:currentColor
}
.service-offer-request.is-primary .service-arrow,.service-store-link.is-primary .service-arrow{background:color-mix(in srgb,var(--bg) 14%,transparent)}
.service-arrow svg{width:12px;height:12px}

/* Contact handoff: make the selected service obvious after a direct CTA. */
#selectedServiceSummary{
 margin:0 0 16px;padding:12px 14px;border-radius:12px;
 border:1px solid color-mix(in srgb,var(--signal) 30%,var(--line));
 background:color-mix(in srgb,var(--signal) 7%,transparent);
 color:var(--text);font-size:13px;font-weight:600
}

/* Old standalone catalogue blocks are intentionally retired on the homepage. */
#projects,.projects-more-quiet,#more-workshops{display:none!important}

@media(max-width:960px){
 .service-hub-nav{grid-template-columns:1fr}
 .service-hub-tab{min-height:122px;grid-template-columns:auto 38px minmax(0,1fr) auto;grid-template-rows:auto}
 .service-hub-tab+.service-hub-tab{border-inline-start:0;border-top:1px solid color-mix(in srgb,var(--line) 82%,transparent)}
 .service-hub-tab-copy{grid-column:3;grid-row:1;align-self:center}
 .service-hub-tab-copy strong{font-size:19px;margin-bottom:5px}
 .service-hub-tab::after{inset-inline:0;width:3px;height:auto;top:14px;bottom:14px;transform:scaleY(0)}
 .service-hub-tab.is-active::after{transform:scaleY(1)}
 .service-hub-panel-head{grid-template-columns:1fr;align-items:start}
 .service-offer-request.is-primary{align-self:start}
 .service-offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
 #services.service-catalog-section{padding-top:78px;padding-bottom:86px}
 #services .service-section-head{margin-bottom:28px}
 .service-hub-tab{padding:18px 16px;min-height:108px;gap:10px}
 .service-hub-number{font-size:10px}
 .service-hub-icon{width:34px;height:34px}
 .service-hub-tab-copy small{font-size:11.5px}
 .service-hub-tab-arrow{width:30px;height:30px}
 .service-hub-panel{margin-top:26px;padding-top:27px}
 .service-hub-panel-head{margin-bottom:26px}
 .service-hub-panel-head h3{font-size:30px}
 .service-offer-grid{grid-template-columns:1fr;gap:34px}
 .service-offer-media{aspect-ratio:16/10;margin-bottom:14px}
 .service-offer-media.is-ui{padding:10px}
 .service-offer h4{font-size:21px}
 .service-offer p{font-size:12.5px}
 .service-offer-request,.service-store-link{width:100%;justify-content:space-between}
 .service-offer-request.is-primary,.service-store-link.is-primary{width:auto}
}
@media(prefers-reduced-motion:reduce){
 .service-hub-panel{animation:none}
 .service-hub-tab,.service-hub-tab::after,.service-hub-tab-arrow,.service-offer-media img,.service-offer-request,.service-store-link{transition:none!important}
}

.nav-store{position:relative}
.nav-store::after{
 content:"";position:absolute;inset-inline:0;bottom:-7px;height:1px;background:var(--signal);
 transform:scaleX(.35);opacity:.75;transition:transform .22s ease
}
.nav-store:hover::after{transform:scaleX(1)}
#store{scroll-margin-top:92px}
.switch-store-section{
 position:relative;padding-top:104px;
 border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent)
}
.switch-store-section::before{
 content:"";position:absolute;inset-inline:8%;top:0;height:1px;
 background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--signal) 60%,transparent),transparent)
}


/* Full platform experience: understand first, request second. */
.service-hub-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.direct-share{
 appearance:none;display:inline-flex;align-items:center;gap:9px;min-height:40px;padding:9px 12px;
 border:1px solid color-mix(in srgb,var(--line) 92%,transparent);border-radius:10px;
 background:transparent;color:var(--text-muted);font:600 11.5px/1.3 inherit;cursor:pointer;
 transition:border-color .22s ease,color .22s ease,background .22s ease,transform .22s ease
}
.direct-share:hover{color:var(--service-gold);border-color:color-mix(in srgb,var(--service-gold) 48%,var(--line));background:color-mix(in srgb,var(--service-gold) 6%,transparent);transform:translateY(-1px)}
.direct-share .service-arrow{background:color-mix(in srgb,var(--service-gold) 8%,transparent);color:var(--service-gold)}
.service-offer-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}

.platform-selector{
 display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:34px
}
.platform-choice{
 appearance:none;min-width:0;padding:12px;display:grid;grid-template-columns:72px minmax(0,1fr) 28px;gap:13px;align-items:center;
 border:1px solid color-mix(in srgb,var(--line) 88%,transparent);border-radius:14px;
 background:color-mix(in srgb,var(--surface) 35%,transparent);color:var(--text);text-align:start;cursor:pointer;
 transition:border-color .24s ease,background .24s ease,transform .24s ease
}
.platform-choice:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--service-gold) 34%,var(--line))}
.platform-choice.is-active{
 border-color:color-mix(in srgb,var(--service-gold) 70%,var(--line));
 background:linear-gradient(145deg,color-mix(in srgb,var(--service-gold) 10%,transparent),color-mix(in srgb,var(--surface) 46%,transparent));
 box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--service-gold) 9%,transparent)
}
.platform-choice>img{width:72px;height:58px;object-fit:cover;border-radius:9px;background:var(--surface)}
.platform-choice>span:nth-of-type(2){min-width:0}
.platform-choice strong{display:block;font-size:13.5px;line-height:1.5;margin-bottom:4px}
.platform-choice small{display:block;color:var(--text-dim);font-size:10px;line-height:1.4}
.platform-choice-index{position:absolute;opacity:0;pointer-events:none}
.platform-choice i{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;font-style:normal;color:var(--text-dim);border:1px solid var(--line-soft)}
.platform-choice.is-active i{color:var(--service-gold);border-color:color-mix(in srgb,var(--service-gold) 38%,var(--line))}
.platform-choice i svg{width:12px;height:12px}

.platform-detail{
 position:relative;padding:clamp(24px,4vw,46px);border-radius:24px;
 background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 94%,var(--bg)),color-mix(in srgb,var(--surface) 82%,var(--bg)));
 border:1px solid color-mix(in srgb,var(--line) 92%,transparent);box-shadow:0 24px 74px rgba(0,0,0,.15);
 scroll-margin-top:92px
}
.platform-detail-head{
 display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:start;margin-bottom:28px
}
.platform-detail-kicker{display:block;color:var(--service-gold);font:700 10px/1.4 var(--font-mono);letter-spacing:.11em;margin-bottom:10px}
.platform-detail-head h4{margin:0 0 10px;font-size:clamp(28px,4.2vw,48px);font-weight:500;line-height:1.28;letter-spacing:-.025em}
.platform-detail-head p{margin:0;color:var(--text-muted);font-size:14px;line-height:1.9;max-width:760px}
.platform-detail-proof{display:inline-flex;margin-top:13px;padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--service-gold) 8%,transparent);color:var(--service-gold);font-size:10.5px}
.platform-detail-hero{
 width:100%;aspect-ratio:16/9;display:grid;place-items:center;overflow:hidden;border-radius:18px;
 background:color-mix(in srgb,var(--bg) 72%,var(--surface));border:1px solid color-mix(in srgb,var(--line) 84%,transparent)
}
.platform-detail-hero img{width:100%;height:100%;object-fit:contain;padding:16px}
.platform-detail-story{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px}
.platform-detail-story section{padding:20px;border-top:1px solid color-mix(in srgb,var(--line) 82%,transparent)}
.platform-detail-story span{display:block;color:var(--service-gold);font:700 10px/1.4 var(--font-mono);letter-spacing:.06em;margin-bottom:8px}
.platform-detail-story p{margin:0;color:var(--text-muted);font-size:13px;line-height:1.9}
.platform-detail-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}
.platform-detail-gallery figure{margin:0;padding:12px;border-radius:16px;background:color-mix(in srgb,var(--bg) 48%,var(--surface));border:1px solid var(--line-soft)}
.platform-detail-gallery img{display:block;width:100%;aspect-ratio:16/10;object-fit:contain;border-radius:10px;background:var(--surface)}
.platform-detail-gallery figcaption{padding-top:8px;color:var(--text-dim);font-size:10.5px;line-height:1.5}

.platform-video-section{margin-top:30px;padding-top:26px;border-top:1px solid color-mix(in srgb,var(--line) 82%,transparent)}
.platform-video-copy{max-width:760px;margin-bottom:14px}
.platform-video-copy>span{display:block;color:var(--service-gold);font:700 10px/1.4 var(--font-mono);letter-spacing:.12em;margin-bottom:7px}
.platform-video-copy h5{margin:0 0 6px;font-size:20px;font-weight:600}
.platform-video-copy p{margin:0;color:var(--text-muted);font-size:12.5px;line-height:1.75}
.platform-video-section video{
 display:block;width:min(100%,920px);max-height:620px;margin-inline:auto;aspect-ratio:16/9;object-fit:contain;
 border-radius:15px;background:#000;box-shadow:0 18px 44px rgba(0,0,0,.24);accent-color:var(--service-gold)
}
.platform-detail-cta{
 margin-top:32px;padding-top:24px;border-top:1px solid color-mix(in srgb,var(--service-gold) 26%,var(--line));
 display:flex;align-items:center;justify-content:space-between;gap:20px
}
.platform-detail-cta>div{display:grid;gap:4px}
.platform-detail-cta strong{font-size:15px}
.platform-detail-cta span{color:var(--text-muted);font-size:11.5px;line-height:1.6}

/* The request form is primary; direct-message channels stay secondary and collapsed. */
.contact-grid.contact-form-first{display:block;max-width:820px;margin-inline:auto}
.contact-grid.contact-form-first #contactForm{width:100%}
.contact-alternatives{margin-top:24px;padding-top:18px;border-top:1px solid var(--line-soft)}
.contact-alternatives>summary{
 cursor:pointer;color:var(--text-muted);font-size:12.5px;font-weight:600;list-style:none;display:inline-flex;align-items:center;gap:8px
}
.contact-alternatives>summary::-webkit-details-marker{display:none}
.contact-alternatives>summary::after{content:"+";color:var(--service-gold);font-size:18px;line-height:1}
.contact-alternatives[open]>summary::after{content:"−"}
.contact-alternatives>p{margin:10px 0 14px;color:var(--text-dim);font-size:11.5px;line-height:1.7}
.contact-alternatives .social-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.contact-alternatives .social-link{padding:12px 13px}
.store-share-product{margin-top:14px}

@media(max-width:960px){
 .service-hub-actions{justify-content:flex-start}
 .platform-selector{grid-template-columns:1fr}
 .platform-choice{grid-template-columns:64px minmax(0,1fr) 28px}
 .platform-choice>img{width:64px;height:52px}
 .platform-detail-head{grid-template-columns:1fr}
 .platform-detail-story{grid-template-columns:1fr}
 .contact-alternatives .social-list{grid-template-columns:1fr}
}
@media(max-width:680px){
 .platform-detail{padding:20px 16px;border-radius:18px}
 .platform-detail-head h4{font-size:30px}
 .platform-detail-hero{aspect-ratio:4/3}
 .platform-detail-hero img{padding:9px}
 .platform-detail-gallery{grid-template-columns:1fr}
 .platform-detail-cta{display:grid;align-items:start}
 .platform-detail-cta .service-offer-request{width:100%;justify-content:space-between}
 .service-hub-actions{display:grid;grid-template-columns:1fr;width:100%}
 .service-hub-actions>*{width:100%!important;justify-content:space-between}
 .service-offer-actions{display:grid}
 .direct-share{width:100%;justify-content:space-between}
}


/* Request actions: one unmistakable gold language across every service/order CTA. */
#services.service-catalog-section{--service-gold:#d7aa63}
.service-offer-request,
.service-store-link,
#contactForm #fSubmitBtn,
#storeForm button[type="submit"]{
 border-color:var(--service-gold)!important;
 background:linear-gradient(135deg,#e0b66f,#c9974e)!important;
 color:#17120c!important;
 box-shadow:0 10px 26px rgba(201,151,78,.20)!important;
 font-weight:700!important
}
.service-offer-request:hover,
.service-store-link:hover,
#contactForm #fSubmitBtn:hover,
#storeForm button[type="submit"]:hover{
 border-color:#e5bd79!important;
 background:linear-gradient(135deg,#e7c17f,#d2a35a)!important;
 color:#120e09!important;
 transform:translateY(-1px)
}
.service-offer-request .service-arrow,
.service-store-link .service-arrow{
 background:rgba(23,18,12,.10)!important;
 color:#17120c!important
}
.service-offer-request:focus-visible,
.service-store-link:focus-visible,
#contactForm #fSubmitBtn:focus-visible,
#storeForm button[type="submit"]:focus-visible{
 outline:2px solid #edca90!important;outline-offset:3px
}
.service-offer-request:disabled,
#contactForm #fSubmitBtn:disabled,
#storeForm button[type="submit"]:disabled{opacity:.58;transform:none}
#selectedServiceSummary{
 border-color:color-mix(in srgb,var(--service-gold) 48%,var(--line))!important;
 background:color-mix(in srgb,var(--service-gold) 10%,transparent)!important
}


/* ===== Direct project-development experience ===== */
.service-hub-panel.is-project-development{padding-top:0;border-top:0;background:transparent}
.project-dev-experience{display:grid;gap:18px}
.project-dev-hero{
 position:relative;min-height:560px;border:1px solid color-mix(in srgb,var(--service-gold) 28%,var(--line));
 border-radius:28px;overflow:hidden;isolation:isolate;
 background:
  radial-gradient(circle at 16% 24%,rgba(163,201,185,.16),transparent 23%),
  radial-gradient(circle at 78% 72%,rgba(212,176,138,.15),transparent 28%),
  linear-gradient(135deg,#0e1b1c 0%,#102124 45%,#0d1719 100%);
 box-shadow:0 34px 90px rgba(0,0,0,.28)
}
.project-dev-hero::before{
 content:"";position:absolute;inset:0;z-index:-2;opacity:.44;
 background-image:
  linear-gradient(rgba(162,196,184,.055) 1px,transparent 1px),
  linear-gradient(90deg,rgba(162,196,184,.055) 1px,transparent 1px);
 background-size:42px 42px;
 mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.55),transparent 84%)
}
.project-dev-hero::after{
 content:"";position:absolute;inset:-30% -10% auto auto;width:62%;aspect-ratio:1;border:1px solid rgba(212,176,138,.24);
 border-radius:50%;box-shadow:0 0 90px rgba(212,176,138,.07),inset 0 0 80px rgba(162,196,184,.035);z-index:-1
}
.project-dev-copy{position:relative;z-index:3;width:min(58%,720px);padding:72px clamp(30px,6vw,82px)}
.project-dev-kicker{
 display:inline-flex;align-items:center;gap:10px;color:var(--service-gold);font:700 11px/1.5 var(--font-mono);
 letter-spacing:.08em;margin-bottom:24px
}
.project-dev-kicker::after{content:"";width:48px;height:1px;background:currentColor;opacity:.7}
.project-dev-copy h3{font-size:clamp(40px,6vw,76px);line-height:1.17;max-width:760px;margin:0 0 24px;font-weight:600;letter-spacing:-.025em}
.project-dev-copy p{max-width:630px;margin:0 0 32px;color:var(--text-muted);font-size:clamp(15px,1.6vw,18px);line-height:2}
.project-dev-start,.project-dev-submit{
 display:inline-flex;align-items:center;justify-content:center;gap:13px;border:1px solid rgba(217,237,225,.55);
 background:linear-gradient(135deg,#bdd9c9,#9fc6b7);color:#10201e;border-radius:999px;
 min-height:54px;padding:13px 26px;font-weight:800;font-size:14px;box-shadow:0 12px 34px rgba(122,178,156,.2);
 transition:transform .22s ease,box-shadow .22s ease,filter .22s ease
}
.project-dev-start:hover,.project-dev-submit:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(122,178,156,.3);filter:brightness(1.03)}
.project-dev-start svg{width:16px;height:16px}
.project-dev-visual{position:absolute;inset:0 0 0 auto;width:48%;z-index:2;pointer-events:none}
html[dir=ltr] .project-dev-visual{inset:0 auto 0 0}
.project-dev-blueprint{
 position:absolute;top:22%;inset-inline-end:14%;width:min(31vw,390px);aspect-ratio:.82;border-radius:24px;
 border:1px solid rgba(212,176,138,.46);background:linear-gradient(150deg,rgba(22,42,42,.92),rgba(14,27,29,.72));
 box-shadow:0 24px 70px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.03);backdrop-filter:blur(12px)
}
.project-dev-blueprint::before{
 content:"";position:absolute;inset:13%;border:1px dashed rgba(162,196,184,.29);border-radius:50%;
 box-shadow:inset 0 0 0 28px rgba(162,196,184,.018),inset 0 0 0 58px rgba(162,196,184,.018)
}
.project-dev-blueprint::after{
 content:"";position:absolute;left:50%;top:24%;width:23%;height:38%;transform:translateX(-50%);
 border:2px solid rgba(212,176,138,.75);border-radius:50% 50% 42% 42%;
 box-shadow:0 0 30px rgba(212,176,138,.14)
}
.project-dev-blueprint span{position:absolute;left:43%;top:60%;width:14%;height:2px;background:rgba(212,176,138,.65);box-shadow:0 7px rgba(212,176,138,.5),0 14px rgba(212,176,138,.35)}
.project-dev-blueprint b{position:absolute;inset-inline-start:12%;bottom:12%;width:30%;height:18%;border:1px solid rgba(162,196,184,.27);border-radius:10px}
.project-dev-blueprint em{position:absolute;inset-inline-end:11%;bottom:13%;width:35%;height:2px;background:rgba(162,196,184,.28);box-shadow:0 -13px rgba(162,196,184,.22),0 -26px rgba(162,196,184,.16)}
.project-dev-step{
 position:absolute;min-width:128px;padding:14px 16px;border:1px solid rgba(212,176,138,.32);border-radius:16px;
 background:rgba(14,29,30,.76);backdrop-filter:blur(12px);box-shadow:0 16px 35px rgba(0,0,0,.2)
}
.project-dev-step small{display:block;color:var(--service-gold);font:700 9px/1 var(--font-mono);margin-bottom:8px;opacity:.8}
.project-dev-step strong{font-size:13px;font-weight:600}
.project-dev-step.is-plan{top:15%;inset-inline-start:2%}.project-dev-step.is-build{top:8%;inset-inline-end:4%}
.project-dev-step.is-test{top:49%;inset-inline-start:-4%}.project-dev-step.is-launch{bottom:11%;inset-inline-end:3%}
.project-dev-orbit{position:absolute;inset:0;pointer-events:none;z-index:1}
.project-dev-orbit::before,.project-dev-orbit::after{content:"";position:absolute;border:1px solid rgba(162,196,184,.14);border-radius:50%;aspect-ratio:1}
.project-dev-orbit::before{width:48%;top:5%;inset-inline-end:4%}.project-dev-orbit::after{width:34%;bottom:-16%;inset-inline-end:18%}
.project-dev-orbit i{position:absolute;width:7px;height:7px;border-radius:50%;background:#a2c4b8;box-shadow:0 0 18px rgba(162,196,184,.65)}
.project-dev-orbit i:nth-child(1){top:18%;inset-inline-end:9%}.project-dev-orbit i:nth-child(2){top:55%;inset-inline-end:37%}.project-dev-orbit i:nth-child(3){bottom:10%;inset-inline-end:24%}

.project-dev-form-panel{
 border:1px solid color-mix(in srgb,var(--service-gold) 24%,var(--line));border-radius:24px;
 background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 92%,var(--bg)),color-mix(in srgb,var(--surface-2) 78%,var(--bg)));
 padding:clamp(24px,4vw,42px);scroll-margin-top:96px
}
.project-dev-form-panel[hidden]{display:none!important}
.project-dev-form-head{max-width:680px;margin-bottom:28px}
.project-dev-form-head>span{display:block;color:var(--service-gold);font:700 10px/1.4 var(--font-mono);letter-spacing:.1em;margin-bottom:8px}
.project-dev-form-head h4{font-size:clamp(25px,3.5vw,38px);margin:0 0 8px}
.project-dev-form-head p{color:var(--text-muted);line-height:1.9;margin:0}
.project-dev-form{display:grid;gap:18px}
.project-dev-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.project-dev-form label{display:grid;gap:8px;color:var(--text-muted);font-size:13px}
.project-dev-form input,.project-dev-form select,.project-dev-form textarea{
 width:100%;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--bg) 80%,var(--surface));
 color:var(--text);padding:13px 14px;font:inherit;transition:border-color .2s ease,box-shadow .2s ease
}
.project-dev-form input:focus,.project-dev-form select:focus,.project-dev-form textarea:focus{border-color:var(--service-gold);box-shadow:0 0 0 3px color-mix(in srgb,var(--service-gold) 12%,transparent);outline:0}
.project-dev-form textarea{resize:vertical;min-height:130px}
.project-dev-consent{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start;gap:10px!important}
.project-dev-consent input{width:18px!important;height:18px;margin-top:4px;accent-color:#9fc6b7;padding:0}
.project-dev-submit{border:0;justify-self:start;min-width:260px}
.project-dev-submit svg{width:19px;height:19px}
.project-dev-submit:disabled{opacity:.55;cursor:wait;transform:none}
.project-dev-status{min-height:1.6em;margin:0;color:var(--service-gold);font-size:13px}
.project-dev-honeypot{position:absolute!important;inset-inline-start:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}

@media(max-width:960px){
 .project-dev-hero{min-height:610px}
 .project-dev-copy{width:64%;padding:58px 34px}
 .project-dev-visual{width:45%;opacity:.78}
 .project-dev-step{min-width:104px;padding:11px 12px}
}
@media(max-width:760px){
 .project-dev-hero{min-height:auto;padding-bottom:270px}
 .project-dev-copy{width:100%;padding:38px 24px}
 .project-dev-copy h3{font-size:clamp(36px,11vw,54px)}
 .project-dev-visual{width:100%;height:300px;top:auto;bottom:0;opacity:.74}
 .project-dev-blueprint{top:9%;inset-inline-end:18%;width:230px}
 .project-dev-step{font-size:11px;min-width:92px}
 .project-dev-step.is-plan{top:15%;inset-inline-start:5%}.project-dev-step.is-build{top:5%;inset-inline-end:6%}
 .project-dev-step.is-test{top:55%;inset-inline-start:3%}.project-dev-step.is-launch{bottom:7%;inset-inline-end:5%}
 .project-dev-grid{grid-template-columns:1fr}
 .project-dev-submit{width:100%;min-width:0}
}
@media(prefers-reduced-motion:reduce){.project-dev-start,.project-dev-submit{transition:none}}


/* ===== Project development v2: split hero + dialog ===== */
body.project-dev-modal-open{overflow:hidden}
.service-hub-panel.is-project-development{margin-top:30px}
.project-dev-hero{
 min-height:440px;
 background:
  radial-gradient(circle at 82% 20%,rgba(160,199,184,.11),transparent 26%),
  linear-gradient(120deg,#0d1819 0%,#112123 52%,#0d1819 100%);
}
.project-dev-hero::before{
 opacity:.28;
 background-size:52px 52px;
 mask-image:linear-gradient(90deg,rgba(0,0,0,.18),#000 34%,#000 72%,rgba(0,0,0,.18));
}
.project-dev-hero::after{
 width:420px;inset:auto -100px -185px auto;border-color:rgba(212,176,138,.13);
 box-shadow:0 0 0 72px rgba(162,196,184,.018),0 0 0 144px rgba(162,196,184,.012);
}
.project-dev-bg{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.project-dev-bg::before,.project-dev-bg::after{
 content:"";position:absolute;height:1px;background:linear-gradient(90deg,transparent,rgba(212,176,138,.22),transparent);width:58%;
 transform:rotate(-12deg)
}
.project-dev-bg::before{top:26%;inset-inline-end:-7%}.project-dev-bg::after{bottom:22%;inset-inline-start:-10%;transform:rotate(10deg)}
.project-dev-bg span{position:absolute;inset-inline-end:13%;top:18%;width:190px;height:190px;border:1px dashed rgba(162,196,184,.16);border-radius:50%}
.project-dev-bg span::before,.project-dev-bg span::after{content:"";position:absolute;border:1px solid rgba(212,176,138,.12);border-radius:50%}
.project-dev-bg span::before{inset:30px}.project-dev-bg span::after{inset:62px}
.project-dev-bg i{position:absolute;width:6px;height:6px;border-radius:50%;background:#9fc6b7;opacity:.65;box-shadow:0 0 16px rgba(159,198,183,.5)}
.project-dev-bg i:nth-child(1){top:18%;inset-inline-start:48%}.project-dev-bg i:nth-child(2){bottom:17%;inset-inline-end:21%}.project-dev-bg i:nth-child(3){top:56%;inset-inline-start:12%}

.project-dev-layout{
 position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
 gap:clamp(34px,6vw,86px);align-items:center;min-height:440px;padding:clamp(42px,6vw,74px)
}
.project-dev-title-block{align-self:center}
.project-dev-title-block .project-dev-kicker{margin-bottom:18px}
.project-dev-title-block h3{
 margin:0;font-size:clamp(52px,7vw,92px);font-weight:650;line-height:1.05;letter-spacing:-.04em;
 max-width:720px;text-wrap:balance
}
.project-dev-info{
 position:relative;padding-inline-start:clamp(22px,3vw,42px);border-inline-start:1px solid rgba(212,176,138,.22)
}
.project-dev-info p{margin:0 0 23px;color:var(--text-muted);font-size:clamp(15px,1.45vw,18px);line-height:2;max-width:560px}
.project-dev-points{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:28px;color:var(--text);font-size:12px}
.project-dev-points span{padding:7px 10px;border:1px solid rgba(162,196,184,.16);border-radius:999px;background:rgba(255,255,255,.018)}
.project-dev-points i{font-style:normal;color:var(--service-gold);opacity:.62}
.project-dev-start{min-width:205px}
.project-dev-visual,.project-dev-orbit{display:none!important}

/* Registration opens as a focused field/dialog instead of expanding under the service. */
.project-dev-modal[hidden]{display:none!important}
.project-dev-modal{
 position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:24px;
 isolation:isolate
}
.project-dev-modal-backdrop{
 position:absolute;inset:0;border:0;padding:0;background:rgba(4,10,11,.78);backdrop-filter:blur(10px);cursor:default
}
.project-dev-form-card{
 position:relative;z-index:1;width:min(760px,100%);max-height:min(88vh,820px);overflow:auto;
 border:1px solid color-mix(in srgb,var(--service-gold) 27%,var(--line));border-radius:26px;
 background:linear-gradient(150deg,#122022,#0d1719 72%);box-shadow:0 36px 110px rgba(0,0,0,.58);
 padding:clamp(24px,4vw,42px)
}
.project-dev-form-card::before{
 content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,transparent,var(--service-gold),#9fc6b7,transparent);opacity:.7
}
.project-dev-close{
 position:absolute;top:16px;inset-inline-end:16px;width:38px;height:38px;border-radius:50%;
 border:1px solid var(--line);background:rgba(255,255,255,.035);color:var(--text);font-size:25px;line-height:1;cursor:pointer
}
.project-dev-close:hover{border-color:var(--service-gold);color:var(--service-gold)}
.project-dev-form-head{max-width:610px;padding-inline-end:48px;margin-bottom:26px}
.project-dev-form-head h4{font-size:clamp(27px,4vw,40px)}
.project-dev-form-card .project-dev-form{gap:17px}
.project-dev-form-card .project-dev-grid{gap:14px}
.project-dev-form-card .project-dev-submit{margin-top:2px}

@media(max-width:860px){
 .project-dev-layout{grid-template-columns:1fr;gap:26px;min-height:0;padding:38px 28px}
 .project-dev-title-block h3{font-size:clamp(48px,10vw,72px)}
 .project-dev-info{padding-inline-start:0;padding-top:24px;border-inline-start:0;border-top:1px solid rgba(212,176,138,.2)}
}
@media(max-width:560px){
 .project-dev-hero{border-radius:22px}
 .project-dev-layout{padding:30px 22px}
 .project-dev-title-block h3{font-size:clamp(42px,13vw,58px)}
 .project-dev-info p{font-size:15px}
 .project-dev-points{gap:7px}.project-dev-points i{display:none}
 .project-dev-start{width:100%}
 .project-dev-modal{padding:10px}
 .project-dev-form-card{border-radius:20px;padding:26px 18px 22px;max-height:94vh}
 .project-dev-form-head{padding-inline-end:42px}
 .project-dev-grid{grid-template-columns:1fr}
 .project-dev-submit{width:100%}
}

.project-dev-share{
 position:absolute!important;left:24px!important;right:auto!important;bottom:20px;z-index:5;
 display:inline-flex!important;align-items:center;gap:9px;min-height:38px;
 padding:8px 13px!important;border:1px solid rgba(212,176,138,.24)!important;border-radius:999px!important;
 background:rgba(9,20,21,.68)!important;color:var(--text-muted)!important;backdrop-filter:blur(10px);
 font-size:11.5px!important;font-weight:650!important;box-shadow:none!important
}
.project-dev-share:hover{color:var(--service-gold)!important;border-color:rgba(212,176,138,.48)!important;background:rgba(9,20,21,.86)!important}
.project-dev-share .service-arrow{display:inline-flex;width:14px;height:14px}
.project-dev-share .service-arrow svg{width:14px;height:14px}
@media(max-width:560px){.project-dev-share{left:14px!important;bottom:12px}}

/* Quick project signup from homepage hero. */
#quickProjectDialog{
 position:fixed;inset:0;margin:auto;width:min(740px,calc(100vw - 28px));
 max-width:none;max-height:calc(100dvh - 24px);padding:0;border:0;border-radius:22px;
 background:transparent;color:var(--text);overflow:visible
}
#quickProjectDialog::backdrop{background:rgba(3,9,11,.82);backdrop-filter:blur(9px)}
#quickProjectDialog .project-dev-form-card{
 width:100%;max-height:calc(100dvh - 24px);border-radius:22px;overflow-y:auto;
 box-shadow:0 28px 90px rgba(0,0,0,.48)
}
#quickProjectDialog .project-dev-grid label:nth-child(n+3){display:none}
#quickProjectDialog .project-dev-form-head{margin-bottom:18px}
#quickProjectDialog .project-dev-form-head h4{font-size:clamp(24px,4vw,34px)}
#quickProjectDialog .project-dev-form{gap:14px}
#quickProjectDialog .project-dev-message textarea{min-height:94px}
@media(max-width:560px){
 #quickProjectDialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}
 #quickProjectDialog .project-dev-form-card{max-height:calc(100dvh - 16px);padding:28px 19px 20px}
 #quickProjectDialog .project-dev-submit{width:100%}
}
