/* Preserve the approved light palette, Manrope and WebGL scene.
   The swarm sits above page content; navigation stays above it. */
.hero{min-height:580px;padding-block:40px 44px}
.hero-stage{height:480px}
.section-space{padding-block:90px}
section.web-section[id]{scroll-margin-top:14px}
section.software-section[id],section.about-section[id]{scroll-margin-top:80px}
section.seo-section[id]{scroll-margin-top:20px}
section.contact-section[id]{scroll-margin-top:35px}
.service-index{grid-template-columns:1fr 1fr 1.16fr}
.service-index a{padding:29px 30px;gap:24px;position:relative;overflow:hidden}
.service-index a::after{content:"";position:absolute;inset:auto 0 0;height:3px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .35s}
.service-index a:hover::after,.service-index a:focus-visible::after{transform:scaleX(1)}
.service-index-copy{display:grid;gap:9px}
.service-index-copy strong{font-size:clamp(21px,2.3vw,32px);line-height:1.2;letter-spacing:-.055em;font-weight:550;color:var(--ink)}
.service-index-copy>span{font-size:13px;color:var(--muted);font-weight:500}
.service-index .icon{width:25px;height:25px;color:var(--ink);transition:transform .3s,color .3s}
.service-index a:hover .icon{transform:translate(4px,-4px);color:var(--accent-text)}
.editorial-heading{position:relative;z-index:6;display:grid;grid-template-columns:1.35fr 1fr;gap:9%;align-items:end}
.editorial-heading h2{font-size:clamp(39px,4.5vw,65px)}
.editorial-heading>p{font-size:16px;line-height:1.85;color:var(--muted);max-width:460px;padding-bottom:5px}
.web-showcase{grid-template-columns:1.12fr 1fr;padding:0;gap:0;align-items:stretch;min-height:0;margin-top:44px;background:var(--surface);overflow:visible}
.web-stage{display:flex;flex-direction:column;justify-content:center;padding:22px 0 20px;background:radial-gradient(ellipse at 50% 44%,#e9e9e9,#f6f6f600 70%);border-radius:var(--radius) 0 0 var(--radius)}
.web-stage .fragment-anchor{height:400px}
.stage-caption{position:relative;z-index:6;text-align:center;font-size:13px;color:var(--muted);letter-spacing:-.01em;margin-top:12px}
.web-details{background:#fff;max-width:none;width:100%;justify-self:stretch;padding:36px 36px 31px;border-left:1px solid var(--line);border-radius:0 var(--radius) var(--radius) 0}
.service-tabs{display:flex;gap:5px;padding:5px;background:var(--surface);border-radius:var(--control-radius);width:100%}
.service-tabs [role=tab]{flex:1;min-width:0;min-height:44px;padding:11px 9px;border-radius:10px;font-size:12px;font-weight:600;line-height:1.5;white-space:normal;color:#555;transition:background-color .2s,color .2s}
.service-tabs [role=tab]:hover{background:#e9e9e9;color:var(--ink)}
.service-tabs [aria-selected=true]{background:var(--ink);color:#fff}
.service-tabs [aria-selected=true]:hover{background:#333;color:#fff}
.service-panels{min-height:315px;padding-top:28px}
.service-panel h3{font-size:32px;font-weight:550;line-height:1.23;letter-spacing:-.045em}
.service-panel>p{font-size:14px;line-height:1.9;color:var(--muted);margin-top:18px;max-width:410px}
.scope-list{display:grid;gap:8px;margin-top:23px}
.scope-list li{display:flex;align-items:center;gap:12px;font-size:13px;line-height:1.65}
.scope-list li::before{content:"";height:4px;width:15px;background:var(--orange);flex-shrink:0;border-radius:2px}
.web-details>.text-link{margin-top:18px;font-size:13px}
.js-ready .service-panel:not([hidden]){animation:panel-in .45s both}
.js-ready .service-panel:not([hidden])>:is(h3,p),.js-ready .service-panel:not([hidden]) .scope-list li{animation:tab-content-in .55s cubic-bezier(.22,1,.36,1) both}
.js-ready .service-panel:not([hidden])>p{animation-delay:.07s}
.js-ready .service-panel:not([hidden]) .scope-list li:nth-child(1){animation-delay:.13s}
.js-ready .service-panel:not([hidden]) .scope-list li:nth-child(2){animation-delay:.19s}
.js-ready .service-panel:not([hidden]) .scope-list li:nth-child(3){animation-delay:.25s}
@keyframes panel-in{from{opacity:0}to{opacity:1}}
@keyframes tab-content-in{from{opacity:0;transform:translateY(12px);filter:blur(2px)}to{opacity:1;transform:none;filter:blur(0)}}
.web-standards{position:relative;z-index:6;display:grid;grid-template-columns:.8fr 2fr;gap:8%;padding:36px 0 0;margin-top:7px}
.web-standards>h3{font-size:22px;line-height:1.4;letter-spacing:-.03em}
.web-standards ul{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.web-standards strong{font-size:14px;line-height:1.5;font-weight:650}
.web-standards p{font-size:13px;line-height:1.8;color:var(--muted);margin-top:9px}
.software-section{padding-top:25px}
.software-theatre{display:grid;grid-template-columns:1fr 2fr 1fr;gap:24px;align-items:center;position:relative;min-height:460px;margin-top:35px}
.software-theatre::before{content:"";position:absolute;inset:28px 13%;border-radius:var(--radius);background:radial-gradient(ellipse,#ededed 0%,#f5f5f5 45%,#fff0 75%);pointer-events:none}
.software-stage{background:none;min-width:0}
.software-stage .fragment-anchor{height:455px}
.software-note{position:relative;z-index:6}
.software-note h3{font-size:20px;line-height:1.4;font-weight:550;letter-spacing:-.035em}
.software-note p{font-size:14px;line-height:1.85;color:var(--muted);margin-top:15px}
.software-note .note-line{display:block;height:1px;width:80%;margin-top:27px;background:linear-gradient(90deg,#aaa,#ddd0)}
.note-right{padding-top:75px}
.note-right .note-line{margin:0 0 27px auto;background:linear-gradient(90deg,#ddd0,#aaa)}
.software-bottom{display:grid;grid-template-columns:1fr 1.2fr;gap:12%;position:relative;z-index:6;border-top:1px solid var(--line);padding-top:37px}
.software-bottom-copy h3{font-size:28px;line-height:1.35;font-weight:500}
.software-bottom-copy h3>span{color:var(--muted)}
.software-bottom-copy>p{font-size:14px;line-height:1.85;color:var(--muted);margin-top:18px;max-width:370px}
.software-bottom-copy .text-link{margin-top:20px;font-size:13px}
.software-services{margin:0}
.software-services summary{padding:20px 0;min-height:64px}
.software-services h3{font-size:15px;line-height:1.5;font-weight:600}
.software-services p{font-size:14px;max-width:100%;padding-right:28px}
.software-services details:first-child summary{padding-top:0;min-height:45px}
.seo-section{padding-top:20px}
.seo-surface{padding:64px 55px 42px;background:linear-gradient(135deg,#fafafa,#f2f2f2);border:1px solid var(--line)}
.seo-surface .editorial-heading{gap:8%;grid-template-columns:1.2fr 1fr}
.seo-visual{max-width:690px;margin-top:44px;padding-bottom:23px}
.seo-visual .fragment-anchor{height:350px;max-width:540px;margin-inline:auto}
.seo-visual-caption{position:relative;z-index:6;text-align:center;font-size:13px;color:var(--muted)}
.search-expression{max-width:400px;min-height:52px;font-size:13px;box-shadow:0 5px 20px #16161605}
.seo-features{grid-template-columns:1fr 1fr;column-gap:65px;row-gap:32px;padding-top:35px}
.seo-features li{display:grid;grid-template-columns:.85fr 1.4fr;gap:20px}
.seo-features h3{font-size:15px;line-height:1.5;letter-spacing:-.025em;font-weight:600;padding-top:2px}
.seo-features p{font-size:14px;line-height:1.85;color:var(--muted)}
.seo-action{display:flex;justify-content:space-between;align-items:center;text-align:left;gap:28px;margin-top:34px;padding-top:25px;border-top:1px solid #ddd}
.seo-action p{color:var(--muted);font-size:14px}
.seo-action .text-link{font-size:13px;flex-shrink:0}
.detail-section{display:grid;grid-template-columns:1fr 1.35fr;gap:12%;padding-top:30px}
.detail-heading{position:relative;z-index:6}
.detail-heading h2{font-size:clamp(39px,4.1vw,60px)}
.detail-heading>p{font-size:16px;color:var(--muted);line-height:1.85;margin-top:24px;max-width:300px}
.principle-lines{position:relative;z-index:6}
.principle{display:grid;grid-template-columns:.65fr 1fr;gap:28px;padding:27px 0;border-top:1px solid var(--line)}
.principle:first-child{padding-top:5px;border-top:0}
.principle:last-child{border-bottom:1px solid var(--line)}
.principle h3{font-size:clamp(28px,3vw,43px);line-height:1.2;font-weight:450;transition:color .25s;align-self:start}
.principle p{font-size:14px;line-height:1.85;color:var(--muted)}
.principle:hover h3{color:var(--accent-text)}
.about-section{padding-top:25px}
.faq-section{display:grid;grid-template-columns:.85fr 1.4fr;gap:13%;padding-top:30px}
.faq-heading,.faq-list{position:relative;z-index:6}
.faq-heading h2{font-size:clamp(38px,4.4vw,61px)}
.faq-heading>p{font-size:16px;line-height:1.85;color:var(--muted);max-width:260px;margin-top:24px}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list details:first-child{border-top:1px solid var(--line)}
.faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:23px 0;min-height:70px;font-size:15px;line-height:1.6;font-weight:600;letter-spacing:-.02em;cursor:pointer;list-style:none;transition:color .2s}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:hover{color:var(--accent-text)}
.faq-list .icon{width:18px;height:18px;transition:transform .25s}
.faq-list [open] .icon{transform:rotate(180deg)}

/* Height, text reveal and the active underline move as one disclosure. */
.motion-disclosure>summary{position:relative}
.motion-disclosure>summary::after{content:"";position:absolute;inset:auto 0 0;height:2px;background:linear-gradient(90deg,#ff4b08,#ffb12a);transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.22,1,.36,1)}
.motion-disclosure.is-expanded>summary::after{transform:scaleX(1)}
.motion-disclosure.is-expanded>summary{color:var(--accent-text)}
.disclosure-panel{overflow:hidden}
.software-services .motion-disclosure>summary>.icon,.faq-list .motion-disclosure>summary>.icon{transform:rotate(0deg);transition:transform .45s cubic-bezier(.22,1,.36,1)}
.software-services .motion-disclosure.is-expanded>summary>.icon,.faq-list .motion-disclosure.is-expanded>summary>.icon{transform:rotate(180deg)}
.motion-paused .motion-disclosure>summary::after,.motion-paused .motion-disclosure>summary>.icon{transition:none}
.motion-paused .service-panel,.motion-paused .service-panel>:is(h3,p),.motion-paused .service-panel .scope-list li{animation:none!important}
.faq-list p{font-size:14px;line-height:1.9;color:var(--muted);padding:0 32px 25px 0;max-width:610px}
.contact-section{padding-top:15px}
.contact-surface{background:#fafafa;border-color:var(--line)}
.contact-copy>p{font-size:16px}
.contact-information span{font-size:13px}
.contact-information p{font-size:13px;line-height:1.9}
.text-link:active,.service-tabs button:active{transform:translateY(1px)}
.motion-paused .service-panel{animation:none!important}
@media (max-width:900px){.section-space{padding-block:72px}section.web-section[id]{scroll-margin-top:32px}section.seo-section[id]{scroll-margin-top:40px}}
@media (max-width:600px){.section-space{padding-block:64px}section.web-section[id]{scroll-margin-top:24px}section.software-section[id],section.about-section[id]{scroll-margin-top:88px}section.seo-section[id]{scroll-margin-top:51px}section.contact-section[id]{scroll-margin-top:52px}}
@media (max-width:1199px){.service-index-copy strong{font-size:25px}.service-index a{padding-inline:23px}.web-details{padding:30px 27px}.service-tabs [role=tab]{font-size:12px;padding-inline:7px}.service-panel h3{font-size:29px}.web-stage .fragment-anchor{height:385px}.software-theatre{grid-template-columns:1fr 1.8fr 1fr;gap:20px}.software-note h3{font-size:18px}.software-note p{font-size:13px}.seo-surface{padding:55px 40px 35px}.seo-features{column-gap:38px}.seo-features li{display:block}.seo-features h3{margin-bottom:10px}.principle{grid-template-columns:1fr;gap:13px}.faq-section{gap:9%}}
@media (max-width:900px){.hero{min-height:520px;padding-top:35px}.hero-stage{height:390px}.service-index a{padding:25px 19px}.service-index-copy strong{font-size:22px}.service-index-copy>span{font-size:12px}.service-index .icon{width:20px;height:20px}.editorial-heading{gap:7%;grid-template-columns:1.2fr 1fr}.editorial-heading h2{font-size:40px}.editorial-heading>p{font-size:14px}.web-showcase{grid-template-columns:1fr 1.1fr}.web-details{padding:25px 22px}.service-tabs{gap:1px;padding:4px}.service-tabs [role=tab]{font-size:12px;padding-inline:5px}.service-panels{min-height:360px;padding-top:25px}.service-panel h3{font-size:28px}.service-panel>p{font-size:14px}.scope-list li{font-size:12px}.web-stage .fragment-anchor{height:345px}.stage-caption{font-size:12px}.web-standards{grid-template-columns:1fr;gap:22px}.web-standards>h3 br{display:none}.software-theatre{grid-template-columns:1fr 1.65fr 1fr;gap:15px}.software-stage .fragment-anchor{height:380px}.software-note h3{font-size:17px}.software-note p{font-size:12px}.software-bottom{gap:7%;grid-template-columns:1fr 1.2fr}.software-bottom-copy h3{font-size:25px}.software-bottom-copy>p{font-size:14px}.software-services h3{font-size:14px}.seo-surface{padding:43px 30px 30px}.seo-surface .editorial-heading{grid-template-columns:1fr 1fr;gap:6%}.seo-features{column-gap:30px}.seo-action{align-items:flex-start}.seo-action p{font-size:13px}.detail-section{gap:9%;grid-template-columns:1fr 1.2fr}.detail-heading h2{font-size:39px}.detail-heading>p{font-size:14px}.principle h3{font-size:34px}.faq-section{grid-template-columns:.85fr 1.3fr;gap:8%}.faq-heading h2{font-size:39px}.faq-heading>p{font-size:14px}.faq-list summary{font-size:14px}.faq-list p{font-size:14px;padding-right:20px}}
@media (max-width:600px){.hero{padding-top:37px;min-height:auto;padding-bottom:20px}.hero-stage{height:320px;margin-top:10px}.service-index{display:grid;grid-template-columns:1fr;width:calc(100% - var(--gutter)*2);padding-inline:0;overflow:visible}.service-index a{min-height:90px;padding:20px 0}.service-index a+a{border-left:0;border-top:1px solid var(--line)}.service-index a:last-child{padding-right:0}.service-index-copy{gap:6px}.service-index-copy strong{font-size:25px}.service-index-copy>span{font-size:12px}.service-index .icon{width:23px;height:23px}.editorial-heading{display:block}.editorial-heading h2{font-size:36px;line-height:1.2}.editorial-heading>p{font-size:15px;line-height:1.85;margin-top:22px;max-width:none;padding:0}.web-showcase{display:flex;flex-direction:column;margin-top:30px;padding:0}.web-stage{margin:0;padding:12px 0 20px;border-radius:var(--radius) var(--radius) 0 0}.web-stage .fragment-anchor{height:285px}.stage-caption{font-size:12px;margin-top:0}.web-details{border-left:0;border-top:1px solid var(--line);border-radius:0 0 var(--radius) var(--radius);padding:22px 22px 27px}.service-tabs{gap:3px}.service-tabs [role=tab]{font-size:12px;padding:10px 6px;min-height:44px}.service-panels{min-height:354px;padding-top:25px}.service-panel h3{font-size:29px;line-height:1.25}.service-panel>p{font-size:14px;margin-top:17px}.scope-list{margin-top:23px;gap:10px}.scope-list li{font-size:13px}.web-details>.text-link{margin-top:8px;font-size:13px}.web-standards{padding-top:27px;gap:24px}.web-standards>h3{font-size:24px;max-width:270px}.web-standards>h3 br{display:block}.web-standards ul{grid-template-columns:1fr;gap:20px}.web-standards li{display:grid;grid-template-columns:.9fr 1.2fr;gap:20px;border-top:1px solid var(--line);padding-top:19px}.web-standards strong{font-size:13px}.web-standards p{font-size:13px;margin-top:0}.software-section{padding-top:0}.software-theatre{grid-template-columns:1fr 1fr;gap:15px 24px;margin-top:22px;min-height:0}.software-theatre::before{inset:12px 0 auto;height:315px}.software-stage{grid-column:1/-1;grid-row:1;width:100%}.software-stage .fragment-anchor{height:320px}.software-note{padding:0}.software-note h3{font-size:16px;line-height:1.5}.software-note p{font-size:13px;line-height:1.85;margin-top:12px}.software-note .note-line{display:none}.software-bottom{display:block;margin-top:35px;padding-top:30px}.software-bottom-copy h3{font-size:27px}.software-bottom-copy>p{font-size:14px}.software-bottom-copy>.text-link{margin-top:20px}.software-services{margin-top:32px}.software-services h3{font-size:14px;letter-spacing:-.02em}.software-services p{font-size:14px;padding-right:14px}.software-services summary{padding-block:20px}.software-services details:first-child summary{padding-top:18px;min-height:64px}.seo-section{padding-top:0}.seo-surface{padding:37px 23px 29px}.seo-surface .editorial-heading{display:block}.seo-surface .editorial-heading h2{font-size:35px}.seo-surface .editorial-heading>p{font-size:14px}.seo-visual{margin-top:28px;padding-bottom:24px}.search-expression{min-height:46px;font-size:11px;padding:11px 14px;gap:12px}.seo-visual .fragment-anchor{height:275px;width:calc(100% + 24px);margin-inline:-12px}.seo-visual-caption{font-size:11px}.seo-features{grid-template-columns:1fr;row-gap:24px;padding-top:26px}.seo-features li{display:grid;grid-template-columns:.7fr 1.25fr;gap:20px}.seo-features h3{font-size:13px;line-height:1.6;margin:0}.seo-features p{font-size:13px;line-height:1.85}.seo-action{display:block;margin-top:28px;padding-top:24px}.seo-action p{font-size:13px}.seo-action .text-link{font-size:13px;margin-top:12px}.detail-section{display:block;padding-top:0}.detail-heading h2{font-size:36px}.detail-heading>p{font-size:15px;max-width:310px;margin-top:22px}.principle-lines{margin-top:32px}.principle{grid-template-columns:.6fr 1fr;gap:25px;padding-block:24px}.principle:first-child{padding-top:23px;border-top:1px solid var(--line)}.principle h3{font-size:29px;line-height:1.3}.principle p{font-size:13px}.about-section{padding-top:0}.faq-section{display:block;padding-top:0}.faq-heading h2{font-size:36px}.faq-heading>p{font-size:15px;max-width:290px;margin-top:22px}.faq-list{margin-top:30px}.faq-list summary{font-size:14px;min-height:75px;gap:18px;padding-block:22px}.faq-list p{font-size:14px;padding-right:20px}.contact-section{padding-top:0}.contact-copy>p{font-size:14px}.contact-information span{font-size:12px}.contact-information p{font-size:13px}}
@media (max-width:359px){.hero-stage{height:285px}.service-index-copy strong{font-size:24px}.web-details{padding-inline:18px}.service-tabs [role=tab]{font-size:12px;padding-inline:4px}.service-panel h3{font-size:27px}.service-panels{min-height:378px}.editorial-heading h2{font-size:33px}.web-standards li{grid-template-columns:1fr;gap:7px}.software-note h3{font-size:15px}.software-note p{font-size:12px}.software-bottom-copy h3{font-size:25px}.seo-surface{padding-inline:20px}.seo-surface .editorial-heading h2{font-size:31px}.seo-features li{display:block}.seo-features h3{margin-bottom:8px}.principle{display:block}.principle p{margin-top:13px}}
@media (prefers-reduced-motion:reduce){.service-panel{animation:none!important}}

@media (min-width:601px) and (max-width:900px){.software-section,.about-section{padding-top:25px}.seo-section{padding-top:20px}.contact-section{padding-top:15px}}

/* Contact details and footer: one clear hit area per contact method. */
.icon-envelope-simple{mask-image:url('../assets/icons/envelope-simple.svg')}
.icon-phone{mask-image:url('../assets/icons/phone.svg')}
.icon-map-pin{mask-image:url('../assets/icons/map-pin.svg')}
.icon-instagram-logo{mask-image:url('../assets/icons/instagram-logo.svg')}
.icon-linkedin-logo{mask-image:url('../assets/icons/linkedin-logo.svg')}
.icon-x-logo{mask-image:url('../assets/icons/x-logo.svg')}
.icon-facebook-logo{mask-image:url('../assets/icons/facebook-logo.svg')}
.icon-youtube-logo{mask-image:url('../assets/icons/youtube-logo.svg')}
.icon-github-logo{mask-image:url('../assets/icons/github-logo.svg')}
.contact-information{grid-template-columns:minmax(245px,.85fr) minmax(250px,.9fr) minmax(0,1.85fr);gap:0;margin-top:36px;padding:0;border-color:var(--line)}
.contact-information>li{min-width:0}
.contact-information>li+li{border-left:1px solid var(--line)}
.contact-item{display:flex;align-items:flex-start;gap:16px;padding:30px 24px 5px;min-width:0;height:100%;transition:color .2s}
.contact-information>li:first-child .contact-item{padding-left:0}
.contact-information>li:last-child .contact-item{padding-right:0}
.contact-information .contact-icon{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;margin:0;border:1px solid #ddd;border-radius:var(--control-radius);background:#fff;color:var(--ink);transition:background-color .2s,border-color .2s}
.contact-information .contact-icon .icon{width:21px;height:21px;margin:0;color:var(--ink)}
.contact-information .contact-text{display:block;margin:0;min-width:0;color:var(--ink)}
.contact-information .contact-label{font-size:13px;line-height:1.5;margin:0 0 10px;color:var(--muted)}
.contact-information strong{display:block;font-size:16px;font-weight:600;line-height:1.6;letter-spacing:-.025em;overflow-wrap:anywhere}
.contact-information .contact-address{margin:0;color:var(--ink)}
.contact-information .contact-hint{display:flex;align-items:center;gap:8px;font-size:12px;line-height:1.6;color:var(--muted);margin:12px 0 0}
.contact-information .contact-hint .icon{width:15px;height:15px;margin:0;color:inherit;transition:transform .2s}
.contact-item:hover .contact-icon{background:#ffede5;border-color:#e7b59f}
.contact-item:hover .contact-hint{color:var(--accent-text)}
.contact-item:hover .contact-hint .icon{transform:translate(2px,-2px)}
.contact-item:active{color:var(--accent-text)}
.footer-top{display:grid;grid-template-columns:auto 1fr;gap:36px;align-items:center;padding-block:8px 29px}
.footer-brand{width:175px}
.social-links{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:14px 24px;margin:0;font-size:13px}
.social-links a{display:inline-flex;align-items:center;gap:8px;min-height:44px;line-height:1.6;transition:color .2s}
.social-links .icon{width:19px;height:19px}
.social-links a:active{color:var(--accent-text)}
.footer-bottom{display:grid;grid-template-columns:1fr auto;gap:18px 30px;align-items:center;padding-top:17px;font-size:12px;line-height:1.6}
.footer-policies{display:flex;flex-wrap:wrap;gap:8px 24px;align-items:center}
.footer-policies a{display:inline-flex;align-items:center;min-height:44px}
.footer-bottom .footer-utilities{display:flex;flex-wrap:wrap;align-items:center;gap:22px}
.footer-motion,.footer-utilities>a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0;font-size:12px;line-height:1.6}
.footer-utilities .icon{width:16px;height:16px}
.footer-copyright{grid-column:1/-1;font-size:12px;color:var(--muted);max-width:100%;text-wrap:pretty}
@media(max-width:1199px){.social-links{gap:10px 18px}.contact-item{padding-inline:18px;gap:13px}.contact-information strong{font-size:14px}}
@media(min-width:901px) and (max-width:1279px){.contact-information{grid-template-columns:1fr 1fr}.contact-information>li:last-child{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);margin-top:24px}.contact-information>li:last-child .contact-item{padding-left:0;padding-top:26px}}
@media(max-width:900px){.contact-information{grid-template-columns:1fr 1fr}.contact-information>li:last-child{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);margin-top:24px}.contact-information>li:last-child .contact-item{padding-left:0;padding-top:26px}.contact-item{padding-bottom:0}.footer-top{grid-template-columns:1fr;gap:20px}.social-links{justify-content:flex-start;gap:12px 25px}.footer-bottom{grid-template-columns:1fr;gap:12px}.footer-bottom .footer-utilities{justify-content:space-between}.footer-copyright{grid-column:1}}
@media(max-width:600px){.menu-toggle{margin-left:auto}.contact-information{grid-template-columns:1fr;margin-top:17px}.contact-information>li+li{border-left:0;border-top:1px solid var(--line)}.contact-information>li:last-child{margin-top:0}.contact-item,.contact-information>li:last-child .contact-item{padding:23px 0;gap:16px}.contact-information>li:last-child .contact-item{padding-bottom:0}.contact-information .contact-label{font-size:13px;margin-bottom:6px}.contact-information strong{font-size:15px}.contact-information .contact-hint{font-size:12px;margin-top:8px}.footer-top{padding-bottom:23px;gap:23px}.footer-brand{width:170px}.social-links{display:grid;grid-template-columns:1fr 1fr;gap:5px 20px;width:100%;font-size:13px}.social-links a{gap:10px;min-height:44px}.social-links .icon{width:20px;height:20px}.footer-bottom{padding-top:16px;gap:12px;font-size:12px}.footer-policies{display:grid;grid-template-columns:1fr 1fr;gap:3px 20px}.footer-policies a{min-height:42px}.footer-bottom .footer-utilities{gap:12px;justify-content:space-between}.footer-motion,.footer-utilities>a{font-size:12px}.footer-copyright{font-size:12px;margin-top:6px}}
@media(max-width:359px){.contact-surface{padding-inline:20px}.contact-item{gap:12px}.contact-information strong{font-size:14px}.contact-information .contact-icon{width:40px;height:40px}.social-links{font-size:12px;gap:5px 14px}.footer-policies{gap:3px 14px;font-size:11px}.footer-motion,.footer-utilities>a{font-size:11px}}

/* About: the service relationship is the visual, with a bounded stage.
   The figure and its caption stay below the fixed WebGL layer. */
.about-overview{display:grid;grid-template-columns:1.08fr 1fr;gap:8%;align-items:center}
.about-introduction{position:relative;z-index:6;min-width:0}
.about-heading{font-size:clamp(36px,3.7vw,54px);line-height:1.2;letter-spacing:-.05em}
.about-lead{font-size:21px;font-weight:550;line-height:1.65;letter-spacing:-.025em;max-width:470px;margin-top:27px}
.about-description{font-size:16px;line-height:1.85;color:var(--muted);max-width:470px;margin-top:16px}
.about-introduction>.text-link{font-size:14px;margin-top:27px}
.about-visual{min-width:0;margin:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.about-stage{position:relative;width:100%;height:335px;margin:0;background:radial-gradient(ellipse at 50% 55%,#e8e8e8,#f6f6f600 72%)}
.about-stage .fragment-anchor{height:100%}
.about-visual-caption{position:relative;z-index:6;margin:0 26px;padding:21px 0 15px;border-top:1px solid #ddd}
.about-visual-caption>p{font-size:13px;color:var(--muted);line-height:1.6}
.about-service-links{display:flex;flex-wrap:wrap;gap:0 23px;margin-top:7px}
.about-service-links a{display:inline-flex;align-items:center;gap:9px;min-height:44px;font-size:14px;font-weight:600;line-height:1.5}
.about-service-links .icon{width:16px;height:16px;transition:transform .2s}
.about-service-links a:hover{color:var(--accent-text)}
.about-service-links a:hover .icon{transform:translate(2px,-2px)}
@media(max-width:1199px){.about-overview{gap:6%}.about-heading{font-size:clamp(34px,4vw,46px)}.about-lead{font-size:19px}.about-description{font-size:15px}.about-stage{height:330px}.about-visual-caption{margin-inline:22px}.about-service-links{gap:0 17px}.about-service-links a{font-size:13px}}
@media(max-width:900px){.about-overview{gap:30px}.about-heading{font-size:34px}.about-lead{font-size:18px;margin-top:22px}.about-description{font-size:14px}.about-stage{height:290px}.about-visual-caption{margin-inline:20px;padding-top:17px}.about-service-links{gap:0 16px}.about-service-links a{font-size:13px}.about-service-links a>.icon{width:14px;height:14px}}
@media(max-width:700px){.about-overview{grid-template-columns:1fr;gap:30px}.about-heading{font-size:36px}.about-lead{font-size:20px;max-width:500px}.about-description{font-size:15px;max-width:500px}.about-stage{height:300px}.about-visual-caption{margin-inline:24px}.about-introduction>.text-link{margin-top:23px}.about-service-links{justify-content:space-between;gap:0 12px}}
@media(max-width:359px){.about-heading{font-size:32px}.about-lead{font-size:18px}.about-description{font-size:14px}.about-stage{height:255px}.about-visual-caption{margin-inline:18px}.about-service-links{gap:0 12px}.about-service-links a{font-size:12px;gap:5px}}

/* Navigation: the underline follows the pointer, with the same cue on focus. */
.desktop-nav{user-select:none}
.desktop-nav>a,.desktop-nav summary{position:relative;display:flex;align-items:center;min-height:44px;transition:color .2s}
.desktop-nav>a::after,.desktop-nav summary::after{content:"";position:absolute;inset:auto 0 5px;height:2px;border-radius:2px;background:linear-gradient(90deg,#ff4408,#ffab21);transform:scaleX(0);transform-origin:right;transition:transform .32s cubic-bezier(.2,.75,.25,1)}
.desktop-nav>a:hover::after,.desktop-nav>a:focus-visible::after,.desktop-nav summary:hover::after,.desktop-nav summary:focus-visible::after,.nav-dropdown[open] summary::after{transform:scaleX(1);transform-origin:left}
.nav-dropdown summary .icon{transition:transform .25s}
.nav-dropdown[open] summary .icon{transform:rotate(180deg)}
.dropdown-panel{top:calc(100% + 8px);left:-20px;min-width:235px;padding:10px;border-radius:18px;border-color:#e9e6e3;box-shadow:0 20px 45px #23160b12,0 3px 8px #23160b06;transform-origin:30px 0}
.dropdown-panel::before{content:"";position:absolute;inset:-15px 0 auto;height:15px}
.nav-dropdown[open] .dropdown-panel{animation:dropdown-enter .28s cubic-bezier(.2,.75,.25,1) both}
.dropdown-panel a{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:47px;padding:12px 14px;font-size:13px;font-weight:550;border-radius:10px;transition:background-color .2s,color .2s}
.dropdown-panel a>.icon{width:17px;height:17px;opacity:.4;transition:transform .25s,opacity .25s}
.dropdown-panel a:hover,.dropdown-panel a:focus-visible{background:#fff2e9;color:#9e330c}
.dropdown-panel a:hover>.icon,.dropdown-panel a:focus-visible>.icon{transform:translate(2px,-2px);opacity:1}
@keyframes dropdown-enter{from{opacity:0;transform:translateY(-7px) scale(.98)}to{opacity:1;transform:none}}

/* Only navigation quote buttons carry the continuously moving brand gradient. */
.button.button-brand{position:relative;isolation:isolate;overflow:hidden;min-height:44px;gap:10px;padding:7px 10px 7px 15px;border-radius:12px;background:#ff6410;color:#fff;border:1px solid #ed5e081c;box-shadow:0 4px 12px #dd520714,inset 0 1px 0 #ffffff4d;transform:none;transition:box-shadow .25s}
.button-brand::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(110deg,#ff4b08 0%,#ff5310 16%,#ffb527 38%,#ff6a0b 56%,#e74106 75%,#ffb527 100%);background-size:240% 100%;background-position:0% 50%;animation:menu-quote-gradient 3.2s ease-in-out infinite alternate}
.button.button-brand:hover,.button.button-brand:focus-visible{background:#ff6410;color:#fff;transform:none;box-shadow:0 8px 20px #cc510322,inset 0 1px 0 #ffffff66}
.quote-label,.quote-arrow{position:relative;z-index:2}
.quote-arrow{display:grid;place-items:center;flex-shrink:0;width:26px;height:26px;border-radius:50%;background:#25190f;color:#fff;box-shadow:inset 0 1px 0 #ffffff29}
.quote-arrow>.icon{width:14px;height:14px}
.button-brand:hover .quote-arrow>.icon,.button-brand:focus-visible .quote-arrow>.icon{transform:translate(2px,-2px)}
.button.button-brand:active{transform:none;box-shadow:0 2px 6px #cc510314}
.header-cta.button-brand{font-size:12px;gap:10px;min-height:44px;padding:7px 10px 7px 15px}

@keyframes menu-quote-gradient{from{background-position:0% 50%}to{background-position:100% 50%}}
.motion-paused .button-brand::after{animation-play-state:paused}

/* FAQ owns its next swarm destination; the swarm passes above its surfaces. */
.icon-question{mask-image:url('../assets/icons/question.svg')}
.faq-heading{z-index:auto}
.faq-heading>h2,.faq-heading>p{position:relative;z-index:6;background:var(--paper)}
.faq-list{background:var(--paper)}
.faq-stage{position:relative;width:100%;max-width:380px;height:280px;margin-top:24px;background:radial-gradient(ellipse,#f0f0f0,#fff0 70%)}
.faq-stage .fragment-anchor{height:100%}
.faq-stage .symbol-fallback.icon{width:160px;height:160px;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);color:var(--accent-text)}
section.faq-section[id]{scroll-margin-top:100px}
.motion-paused .dropdown-panel{animation:none!important}
@media(max-width:900px){.faq-stage{height:250px;margin-top:20px}.header-cta.button-brand{font-size:11px;gap:10px}}
@media(max-width:600px){.hero .button.button-brand{min-height:49px;padding:10px 10px 10px 15px;gap:11px;font-size:11px}.hero .quote-arrow{width:28px;height:28px}.hero .quote-arrow .icon{width:15px;height:15px}.contact-copy>.button.button-brand{font-size:12px;padding:12px 12px 12px 18px}.faq-stage{max-width:300px;height:220px;margin:16px auto 0}.faq-list{margin-top:20px}.mobile-nav>.button.button-brand{align-self:flex-start;padding-right:10px}.mobile-nav>.button.button-brand .quote-arrow{width:26px;height:26px}}
@media(max-width:359px){.hero .button.button-brand{font-size:11px}.hero .quote-arrow{width:27px;height:27px}.faq-stage{height:210px}}
@media(prefers-reduced-motion:reduce){.nav-dropdown[open] .dropdown-panel{animation:none}.desktop-nav>a::after,.desktop-nav summary::after,.nav-dropdown summary .icon,.dropdown-panel a>.icon,.button.button-brand,.button-brand::before,.button-brand::after,.quote-arrow>.icon{transition:none}.button-brand:hover::before,.button-brand:focus-visible::before{display:none}}

/* Language choices update the menu indicator only; page content remains Turkish. */
.icon-globe{mask-image:url('../assets/icons/globe.svg')}
.language-switcher{flex-shrink:0}
.language-switcher>summary{height:44px;gap:7px;padding:0 11px;border:1px solid var(--line);border-radius:12px;font-size:13px;font-weight:650;line-height:1;transition:border-color .2s,background-color .2s}
.language-switcher>summary:hover,.language-switcher[open]>summary{border-color:#eacabb;background:#fff9f5}
.language-switcher>summary .icon-globe{width:17px;height:17px}
.language-switcher>summary .icon-caret-down{width:11px;height:11px}
.language-switcher .dropdown-panel{left:auto;right:0;min-width:180px;transform-origin:100% 0}
.language-options>button{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;min-height:44px;padding:10px 12px;border-radius:10px;font-size:14px;font-weight:550;text-align:left;transition:background-color .2s,color .2s}
.language-options>button:hover,.language-options>button:focus-visible,.language-options>button[aria-pressed="true"]{background:#fff2e9;color:#9e330c}
.language-flag{display:block;width:24px;height:18px;flex-shrink:0;object-fit:cover;border-radius:3px;box-shadow:0 0 0 1px #16161612}
@media(max-width:600px){.language-switcher{margin-left:auto}.site-header>.menu-toggle{margin-left:0}}
@media(prefers-reduced-motion:reduce){.language-switcher>summary,.language-options>button{transition:none}}

.menu-open .site-header>.language-switcher{visibility:hidden;pointer-events:none}
.mobile-nav>.language-switcher{margin:14px 0 0}
.mobile-nav>.language-switcher>summary{display:inline-flex;gap:10px;font-size:14px;letter-spacing:0;padding:0 12px}
.mobile-nav>.language-switcher>.language-options{position:static;width:100%;min-width:0;margin-top:8px;padding:0;border:0;box-shadow:none;background:none}
@media(max-width:1199px){.site-header>.language-switcher{margin-left:auto}.site-header>.header-cta{margin-left:0}}

/* Clear service wording and breathing room around the requested content. */
.hero h1{font-size:clamp(40px,4.4vw,64px)}
.service-index a:first-child{padding-left:30px}
.faq-list .disclosure-inner,.faq-list details>p{padding-top:20px}
.contact-information>li:last-child .contact-text{flex:1}
.contact-information .contact-address{overflow-wrap:normal}
@media(min-width:1280px){.contact-information>li:last-child .contact-item{padding-left:40px}}
@media(max-width:1199px){.service-index a:first-child{padding-left:23px}}
@media(max-width:900px){.hero h1{font-size:clamp(30px,3.8vw,40px)}.hero h1>span,.hero h1>strong{white-space:normal}.service-index a:first-child{padding-left:19px}}
@media(max-width:600px){.hero h1{font-size:clamp(28px,7.6vw,44px)}.service-index a:first-child{padding-left:0}.faq-list .disclosure-inner,.faq-list details>p{padding-top:16px}}

/* Keep the home service titles together within their available column. */
.service-panels{container-type:inline-size}
#web-panel-corporate>h3,#web-panel-commerce>h3{font-size:clamp(16px,7.6cqi,32px)}
html[lang=tr] #web-panel-corporate>h3,html[lang=tr] #web-panel-commerce>h3{text-transform:capitalize}
html:is([lang=en],[lang=ar]) #web-panel-corporate>h3,html:is([lang=en],[lang=ar]) #web-panel-commerce>h3{font-size:clamp(14px,6.4cqi,32px)}
