/*
 * FORMFIELD | Studio Edition — original architectural editorial theme
 * Design principles: disciplined grid, type over decoration, exacting linework,
 * no fake statistics, no blob gradients, no stock-style visual effects.
 */
:root {
  --paper:#F3F2ED;
  --canvas:#F8F7F3;
  --surface:#FFFFFF;
  --ink:#172B32;
  --ink-light:#38505A;
  --graphite:#223B42;
  --quiet:#64767A;
  --rule:#D7DAD5;
  --accent:#B87959;
  --accent-dark:#9A5D42;
  --navy:#172B32;
  --navy2:#142B32;
  --fog:#F3F2ED;
  --line:#D7DAD5;
  --white:#FFFFFF;
  --wrap:1320px;
  --radius:0px;
}
*,*::before,*::after { box-sizing:border-box }
body { background:var(--paper); color:var(--ink); font-family:Arial,"Helvetica Neue",Helvetica,sans-serif; font-size:15px; letter-spacing:-.008em; }
h1,h2,h3 { letter-spacing:-.058em; line-height:1.075 }
.page-wrap,.nav-shell { width:min(calc(100% - 112px),var(--wrap)); }
a,button { -webkit-tap-highlight-color: transparent }
*:focus-visible { outline:2px solid var(--accent);outline-offset:4px }
::selection { background:#C3D0CD;color:var(--ink) }

/* A header that feels like the masthead on a set of drawings. */
.header { height:80px;background:var(--paper);border-bottom:1px solid #D4D7D1;box-shadow:none }
.nav-shell { gap:50px }
.brand { gap:14px }
.brand-symbol { border:1.5px solid var(--ink);width:34px;height:34px;transform:skewY(-8deg); }
.brand-symbol span { background:var(--ink) }
.brand-symbol span:nth-child(1),.brand-symbol span:nth-child(2){height:23px;top:4px}
.brand-symbol span:nth-child(3) {height:1.5px;top:16px}
.brand-text { letter-spacing:.14em }
.brand-text strong {font-size:16px;letter-spacing:.18em;font-weight:800}
.brand-text small {font-size:8px;letter-spacing:.3em;color:var(--quiet)}
.site-nav {gap:35px;color:var(--ink-light);font-size:11px;font-weight:700;letter-spacing:.045em}
.site-nav>a:not(.button):hover { color:var(--accent-dark) }
.button { border-radius:0; font-size:11px; font-weight:760; letter-spacing:.015em; box-shadow:none; transition:transform .24s ease, background .24s ease, border-color .24s ease, color .24s ease }
.button:not(:disabled):hover { box-shadow:none;transform:translateY(-2px) }
.button-nav { min-height:44px!important; background:var(--ink); padding:11px 18px; }
.button-nav:hover { background:#334C52 }
.button span[aria-hidden="true"], .text-link span { transition:transform .22s ease;display:inline-block }
.button:hover span[aria-hidden="true"], .text-link:hover span { transform:translate(2px,-2px) }

/* Hero: a real project-study stage, not a marketing gradient. */
.hero { background:var(--paper);color:var(--ink); background-image:none; overflow:hidden; }
.hero-grid { display:grid;grid-template-columns:.94fr 1.06fr;gap:clamp(36px,4.2vw,76px);align-items:center;min-height:720px;padding-top:82px;padding-bottom:80px; }
.hero-content {align-self:center;padding-bottom:0}
.hero-kicker { color:#667A80;letter-spacing:.16em;font-weight:800;margin-bottom:39px;font-size:9px;gap:14px }
.hero-kicker::before {content:'';height:1px;width:34px;background:var(--accent);flex-shrink:0}
.pulse-dot {display:none}
.hero h1 {font-size:clamp(50px,5.4vw,83px);font-weight:670;line-height:1.01;letter-spacing:-.075em;max-width:660px;margin-bottom:31px;text-wrap:balance}
.hero h1::after {content:'';display:block;width:58px;height:2px;background:var(--accent);margin-top:32px}
.hero-description {font-size:16px;color:#50646B;line-height:1.77;max-width:525px;margin-bottom:35px}
.hero-actions {gap:27px}
.button-primary {background:var(--ink);color:#fff;min-width:244px;min-height:54px}
.button-primary:hover {background:#354D54}
.text-link {color:var(--ink);border-color:#82949A;font-size:12px}
.hero-assurance {color:#748286;margin-top:40px;font-size:11px;max-width:470px;line-height:1.6}
.assurance-mark {width:22px;height:22px;color:var(--accent-dark);border:1px solid #B7B6AD;border-radius:0}
.hero-visual { align-self:center }
.image-frame {transform:none;background:#182D34;border:0;border-radius:0;box-shadow: 16px 16px 0px #D9D9D2;}
.hero-viewer {height:565px;min-height:565px;background:#152B31}
.hero-viewer .viewer-fallback {height:100%;object-fit:cover}
.hero-viewer::after {background:none;display:none}
.hero-viewer .image-overlay {background:linear-gradient(transparent, #0f262e98);padding:68px 30px 30px;}
.hero-viewer .image-overlay span {color:#B8C5C2;font-size:9px;font-weight:600;letter-spacing:.13em}
.hero-viewer .image-overlay strong {color:#F1EDE5;font-size:9px;letter-spacing:.11em}
.viewer-topline {top:19px;left:21px;right:21px;color:#B0C5C4;font-size:9px;font-weight:600;letter-spacing:.13em}
.viewer-live-dot {background:#C38B71;box-shadow:none;border-radius:0;width:7px;height:7px}
.viewer-controls {bottom:84px;left:21px;right:21px}
.viewer-control {background:#132A32dd;color:#F2F2ED;border-color:#71868A70;border-radius:0;font-size:10px;font-weight:600}
.viewer-control:hover {background:#345158;border-color:#A9BDBB}
.viewer-instructions {color:#D1D9D5;letter-spacing:.13em;font-size:9px;font-weight:500}
.floating-note {display:none}
.hero-bottom {height:88px;min-height:88px;border-top:1px solid #D2D6D1;color:#3F5960;gap:27px;font-size:10px}
.hero-bottom>span {color:var(--accent-dark);font-size:9px}
.hero-bottom strong {color:#3F5960;font-weight:750;font-size:10px}
.hero-bottom i {width:18px;height:1px;background:#B5B9B5;border-radius:0}

/* Strict use of whitespace and fewer decorative containers. */
.section {padding-block:124px}
.section-kicker {font-size:10px;letter-spacing:.16em;color:var(--accent-dark);font-weight:800;margin-bottom:26px}
.section-kicker::before {content:'';width:24px;height:1px;background:var(--accent);display:inline-block;margin-right:0}
.section-kicker span {font-size:10px;letter-spacing:.13em;color:#97A19E}
.section h2 {font-size:clamp(40px,4.7vw,68px);font-weight:630;letter-spacing:-.068em;line-height:1.065;max-width:770px}
.section-about {background:var(--canvas);padding-block:137px 142px;border-bottom:1px solid var(--rule)}
.two-col {grid-template-columns:1.04fr .96fr;gap:clamp(60px,8vw,145px)}
.about-copy {padding-top:58px}
.about-copy p {color:#54656B;font-size:16px;line-height:1.84;margin-bottom:22px}
.vertical-line {background:var(--accent);height:2px;width:56px;margin-top:39px}
.software {margin-top:39px;padding-top:25px;border-color:var(--rule)}
.software-label {color:#798684;font-size:10px;font-weight:750}
.software-tags {gap:6px}
.software-tags span {background:transparent;border:1px solid #C8CFCA;border-radius:0;color:var(--ink);font-weight:700;font-size:12px;padding:8px 13px}
.about-copy p.software-note {font-size:11px;color:#83918E;line-height:1.65}

.section-services {background:var(--paper);border:0;padding-top:131px;padding-bottom:134px}
.section-header {margin-bottom:54px;gap:80px}
.section-header>p {font-size:15px;line-height:1.76;color:#697B7B;max-width:383px}
.service-grid {gap:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);}
.service-card {background:transparent;border:0;border-right:1px solid var(--rule);padding:32px 30px 33px 0;min-height:490px;box-shadow:none;transform:none;will-change:auto;transition:background .18s ease}
.service-card+.service-card {padding-left:30px}
.service-card:last-child {border-right:0}
.service-card::before {display:none}
.service-card:hover,.service-card.will-reveal.is-visible:hover {box-shadow:none;background:transparent;border-color:var(--rule);transform:none}
.service-top {padding-bottom:25px;margin-bottom:35px;color:#A3AFAA;border-color:var(--rule)}
.service-top svg {color:#6C7F82;width:38px;height:38px}
.service-top>span {color:#A66E52;font-size:12px;font-weight:750}
.service-tag {color:#748383;font-weight:750;margin-bottom:19px;font-size:9px;letter-spacing:.14em}
.service-card h3 {font-size:clamp(22px,2.4vw,31px);letter-spacing:-.05em;font-weight:660;line-height:1.17;margin-bottom:20px;max-width:380px}
.service-card>p {font-size:14px;color:#5A6F73;line-height:1.77;max-width:340px}
.service-deliverables {font-size:10px;color:#788887;border-color:var(--rule);letter-spacing:.01em;padding:20px 0 17px}
.service-more {color:var(--ink);font-size:11px;letter-spacing:.02em;font-weight:750}
.service-more span {color:var(--accent-dark)}
.service-more:hover span {transform:translate(3px,-3px)}
.service-foot {margin-top:27px;gap:18px}
.service-foot p {font-size:12px;color:#768683}
.service-foot .tiny-bar {background:var(--accent);width:22px}
.service-foot a {color:var(--ink)}

/* Portfolio is a curated architectural plate wall, not identical AI cards. */
.section-work {background:#E7E7E1;padding-bottom:134px}
.work-header {margin-bottom:36px}
.work-header h2 {max-width:790px}
.filters {gap:22px;margin-bottom:31px;border-bottom:1px solid #C7CBC6;padding-bottom:15px}
.filter {padding:10px 0;border:0;border-bottom:2px solid transparent;border-radius:0;background:none;color:#6F7C7C;font-size:11px;font-weight:750}
.filter:hover,.filter.active {border:0;border-bottom:2px solid var(--accent-dark);background:none;color:var(--ink)}
.work-grid {grid-template-columns:repeat(12,minmax(0,1fr));gap:20px 20px;align-items:stretch}
.work-card {grid-column:span 4;background:var(--canvas);border:0;border-radius:0;overflow:hidden;transition:transform .25s ease}
.work-card:hover {transform:translateY(-3px)}
.work-card:nth-child(5n+1) {grid-row:auto}
.work-card:first-child {grid-column:span 7}
.work-card:nth-child(2) {grid-column:span 5}
.work-card:nth-child(6) {grid-column:span 5}
.work-card:nth-child(7) {grid-column:span 7}
.work-card:nth-child(8) {grid-column:span 12}
.work-thumb {background:#182D34;aspect-ratio:1.50}
.work-thumb img {aspect-ratio:inherit;object-fit:cover;transition:transform .5s ease}
.work-card:hover .work-thumb>img:not(.viewer-fallback) {transform:scale(1.018)}
.work-card:nth-child(5n+1) .work-thumb img {aspect-ratio:inherit}
.work-card:first-child .work-thumb {aspect-ratio:1.77}
.work-card:nth-child(2) .work-thumb {aspect-ratio:1.28}
.work-card:nth-child(6) .work-thumb {aspect-ratio:1.30}
.work-card:nth-child(7) .work-thumb {aspect-ratio:1.78}
.work-card:nth-child(8) .work-thumb {aspect-ratio:2.4}
.work-label {left:15px;top:15px;background:#F6F5EFEB;color:#455960;border-radius:0;padding:7px 10px;font-size:9px;letter-spacing:.09em}
.work-caption {padding:23px 25px 28px;min-height:128px}
.work-caption span:not(.work-index) {color:var(--accent-dark);font-size:9px;letter-spacing:.13em}
.work-caption h3 {font-size:20px;font-weight:680;color:var(--ink);margin:8px 0 6px}
.work-caption p {color:#7B8885;font-size:12px}
.work-index {color:#A6AEAB;font-size:11px}
.portfolio-viewer {aspect-ratio:1.50}
.work-card:nth-child(5n+1) .portfolio-viewer {aspect-ratio:1.50}
.viewer-mini-label {color:#D4DCD7;background:#14292dc9;border-radius:0;font-size:9px;letter-spacing:.1em}
.portfolio-disclosure {background:transparent;border-left:2px solid #A8735A;color:#6E7A77;margin-top:31px;font-size:11px;padding:9px 16px}

.section-approach {background:#1A3138;color:#F3F2ED;padding-top:128px;padding-bottom:128px}
.section-approach .section-kicker {color:#C69175}
.section-approach .section-header p {color:#B1BFBB}
.advantage-grid {margin:48px 0 63px;border-color:#52666B}
.advantage {padding:28px 29px;min-height:240px;border-color:#52666B}
.advantage:first-child {padding-left:0}
.advantage h3 {font-size:21px;letter-spacing:-.04em;margin:30px 0 15px}
.advantage p {color:#ADBAB8;font-size:13px;line-height:1.78}
.advantage-no {color:#C18A6C;font-size:11px}
.process-panel {gap:80px}
.process-eyebrow {color:#BC8C75;font-weight:750}
.process-panel h3 {font-size:28px;letter-spacing:-.05em;max-width:390px}
.process-steps span {color:#BAC7C3;font-size:12px}
.process-steps b {color:#C89272}

.contact-section {background:var(--canvas);padding-top:137px;padding-bottom:142px}
.contact-grid {grid-template-columns:.85fr 1.15fr;gap:9%}
.contact-intro h2 {font-size:clamp(42px,4.5vw,66px);line-height:1.06}
.contact-intro>p {color:#687979;line-height:1.8}
.contact-lines {border-color:var(--rule)}
.contact-lines a {border-color:var(--rule);padding:20px 0}
.contact-lines a>span {color:#8E9793;font-size:9px}
.contact-lines strong {color:var(--ink);font-size:17px}
.contact-art {opacity:.07}
.form-panel {border:1px solid var(--rule);box-shadow:none;background:#fff;padding:clamp(25px,3.2vw,48px);border-radius:0}
.form-title h3 {font-size:30px;color:var(--ink)}
.form-title p {color:#81908D}
.field label {color:#4A5B60;font-size:11px}
input:not([type=checkbox]),select,textarea {border:1px solid #CBD2CD;border-radius:0;background:#FCFCFA;color:var(--ink);font-size:13px}
input:focus,select:focus,textarea:focus {border-color:var(--accent);box-shadow:0 0 0 3px #B8795917}
.consent {color:#667573}
.consent input {accent-color:var(--accent-dark)}
.button-submit {background:var(--ink);border-radius:0}
.button-submit:hover {background:#334C52}
.form-fine {color:#86928C;font-size:10px}
.footer {background:#15282F}
.footer-top {border-color:#42565B}
.brand-footer .brand-symbol {border-color:#DFE4DF}
.brand-footer .brand-symbol span {background:#DFE4DF}
.footer-top p {color:#A7B8B6}
.privacy {border-color:#42565B;color:#99AAA6}
.privacy strong {color:#E2E7E2}
.footer-bottom {color:#94A5A2}

/* Only subtle, considered interaction. No fake 'holographic' glow. */
.will-reveal {transform:translateY(17px);transition:opacity .63s ease,transform .63s cubic-bezier(.2,.65,.2,1)}
.button:focus-visible {box-shadow:none}
.hero-viewer .viewer-fallback,.portfolio-viewer .viewer-fallback {height:100%;width:100%;object-fit:cover}
.bim-viewer.viewer-ready .viewer-fallback {visibility:hidden}
.bim-viewer.viewer-unavailable .viewer-fallback {visibility:visible}

@media(max-width:1180px){
  .page-wrap,.nav-shell {width:min(calc(100% - 70px),var(--wrap))}
  .hero-grid {gap:40px;grid-template-columns:.96fr 1.04fr}
  .hero h1 {font-size:clamp(49px,5.6vw,68px)}
  .hero-viewer {height:500px;min-height:500px}
  .service-card {padding-right:22px}
  .service-card+.service-card {padding-left:22px}
}
@media(max-width:850px){
  .header {height:72px}
  .page-wrap,.nav-shell {width:min(calc(100% - 44px),var(--wrap))}
  .hero-grid {grid-template-columns:1fr;gap:42px;padding-top:72px;padding-bottom:68px;min-height:0}
  .hero h1 {max-width:780px;font-size:clamp(50px,8vw,76px)}
  .hero-visual {max-width:100%}
  .hero-viewer {height:auto;min-height:0;aspect-ratio:1.6}
  .two-col {gap:45px}
  .section {padding-block:90px}
  .section h2 {font-size:clamp(38px,6vw,56px)}
  .about-copy {padding-top:0}
  .service-grid {grid-template-columns:1fr}
  .service-card,.service-card+.service-card {border-right:0;border-bottom:1px solid var(--rule);min-height:0;padding:24px 0 27px}
  .service-card:last-child {border:0}
  .service-top {margin-bottom:22px;padding-bottom:15px}
  .service-card h3 {font-size:30px}
  .service-card>p {max-width:650px}
  .service-deliverables {margin-top:25px}
  .advantage-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .advantage:nth-child(2) {border-right:0}
  .advantage:nth-child(1),.advantage:nth-child(2) {border-bottom:1px solid #52666B}
  .process-panel {gap:30px}
  .work-grid {gap:14px}
  .work-card:first-child,.work-card:nth-child(2),.work-card:nth-child(6),.work-card:nth-child(7),.work-card:nth-child(8) {grid-column:span 6}
  .work-card {grid-column:span 6}
  .work-card .work-thumb,.work-card:nth-child(2) .work-thumb,.work-card:first-child .work-thumb,.work-card:nth-child(6) .work-thumb,.work-card:nth-child(7) .work-thumb,.work-card:nth-child(8) .work-thumb {aspect-ratio:1.45}
  .contact-grid {gap:5%}
}
@media(max-width:760px){
  .header {height:70px}
  .site-nav {gap:0;background:var(--paper);border-top:1px solid var(--rule)}
  .site-nav.open {box-shadow:0 14px 25px #111e2422}
  .site-nav>a:not(.button) {font-size:14px;padding:14px 22px;border-bottom:1px solid var(--rule)}
  .site-nav .button-nav {margin:12px 22px 20px}
  .nav-toggle {border-radius:0;border-color:var(--rule)}
  .hero-kicker {margin-bottom:29px}
  .hero-description {font-size:15px}
  .hero-assurance {margin-top:26px}
  .two-col {grid-template-columns:1fr}
  .section-header {align-items:start;flex-direction:column;gap:20px;margin-bottom:39px}
  .section-header>p {max-width:560px}
  .hero-bottom {height:auto;min-height:65px;gap:17px;padding-block:17px}
  .hero-bottom i {width:12px}
  .advantage-grid {grid-template-columns:repeat(2,1fr)}
  .process-panel {grid-template-columns:1fr}
  .contact-grid {grid-template-columns:1fr;gap:32px}
  .contact-intro {min-height:0;padding-bottom:8px}
  .contact-art {display:none}
  .footer-top {gap:25px}
}
@media(max-width:520px){
  .page-wrap,.nav-shell {width:calc(100% - 36px)}
  .brand-symbol {width:29px;height:29px}
  .brand-text strong {font-size:14px}
  .hero-grid {padding-top:48px;padding-bottom:57px;gap:37px}
  .hero-kicker {font-size:8px;letter-spacing:.095em}
  .hero-kicker::before {width:18px}
  .hero h1 {font-size:clamp(42px,10.2vw,58px);line-height:1.04;margin-bottom:28px}
  .hero h1::after {margin-top:24px}
  .hero-actions {gap:20px}
  .button-primary {width:100%}
  .hero-viewer {aspect-ratio:1.07;min-height:0;height:auto}
  .image-frame {box-shadow:7px 7px 0 #D9D9D2}
  .viewer-topline {left:14px;top:14px;letter-spacing:.08em}
  .viewer-controls {bottom:71px;left:12px;right:12px;gap:6px}
  .viewer-instructions {display:none}
  .viewer-control {padding:6px 9px;font-size:10px}
  .hero-viewer .image-overlay {padding:50px 14px 19px}
  .hero-viewer .image-overlay span,.hero-viewer .image-overlay strong {font-size:8px}
  .hero-bottom {gap:9px 15px}
  .hero-bottom>span {width:100%}
  .hero-bottom strong {font-size:9px}
  .hero-bottom i {display:none}
  .section {padding-block:78px}
  .section h2 {font-size:40px}
  .section-kicker {margin-bottom:21px;font-size:9px}
  .about-copy p {font-size:14px}
  .service-card h3 {font-size:27px}
  .service-foot {flex-wrap:wrap}
  .service-foot a {margin-left:40px}
  .work-grid {grid-template-columns:1fr;gap:20px}
  .work-card,.work-card:first-child,.work-card:nth-child(2),.work-card:nth-child(6),.work-card:nth-child(7),.work-card:nth-child(8) {grid-column:span 1}
  .work-card .work-thumb,.work-card:nth-child(2) .work-thumb,.work-card:first-child .work-thumb,.work-card:nth-child(6) .work-thumb,.work-card:nth-child(7) .work-thumb,.work-card:nth-child(8) .work-thumb {aspect-ratio:1.5}
  .work-card:nth-child(5n+1) .portfolio-viewer {aspect-ratio:1.5}
  .work-caption {min-height:0}
  .filters {gap:17px}
  .filter {font-size:10px}
  .advantage-grid {grid-template-columns:1fr;margin-bottom:50px}
  .advantage,.advantage:first-child {border-right:0;border-bottom:1px solid #52666B;min-height:0;padding:26px 0}
  .advantage:last-child {border-bottom:0}
  .advantage h3 {margin:15px 0 7px}
  .advantage p {max-width:370px}
  .process-steps {gap:12px}
  .process-steps span {font-size:10px}
  .field-grid {grid-template-columns:1fr;gap:0}
  .form-panel {padding:25px 20px}
  .mobile-cta {background:var(--ink);font-size:11px}
  .footer-top {gap:20px}
}
@media(prefers-reduced-motion:reduce){
  .work-card:hover,.work-card:hover .work-thumb>img:not(.viewer-fallback){transform:none}
}

.viewer-unavailable .viewer-mini-label,.viewer-unavailable .viewer-mini-reset,.viewer-unavailable .viewer-controls{display:none!important}
.viewer-unavailable .image-overlay strong{color:#DDE5DE}

/* Selected real-world architectural renders: quiet photography treatment, not a decorative hero takeover. */
.work-thumb--render { background:#C3C7BE; position:relative; }
.work-thumb--render img { display:block;width:100%;height:100%;object-fit:cover;object-position:center; }
.work-thumb--render::after { content:"";position:absolute;inset:48% 0 0;pointer-events:none;background:linear-gradient(transparent,#0A202C4D); }
.work-thumb--render .work-label { background:#F4F1E7; color:#42545A; z-index:2; }
.gallery-open { position:absolute;bottom:19px;right:19px;z-index:3;display:inline-flex;align-items:center;gap:26px;min-height:42px;padding:0 14px;border:1px solid #F7F5EE9E;border-radius:0;background:#152D36EC;color:#fff;font:700 10px/1 Arial, sans-serif;letter-spacing:.105em;cursor:pointer;transition:background .2s ease,transform .2s ease; }
.gallery-open:hover,.gallery-open:focus-visible{background:#294752;transform:translateY(-2px)}
.gallery-open span{font-size:17px;font-weight:400}
.project-gallery{width:min(1000px,calc(100vw - 36px));max-width:none;max-height:min(94vh,920px);padding:0;border:1px solid #D6DAD4;background:#F3F2ED;color:#172B32;box-shadow:0 32px 90px #04151BA6;overflow:auto}
.project-gallery::backdrop{background:#07151BD9;backdrop-filter:blur(4px)}
.gallery-dialog-inner{padding:23px}
.gallery-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:4px 0 18px}
.gallery-toolbar h2{font-size:24px;letter-spacing:-.045em;margin-top:5px;line-height:1.13}
.gallery-eyebrow{color:#A16B4E;font-size:10px;font-weight:800;letter-spacing:.16em}
.gallery-close{display:flex;gap:14px;align-items:center;border:1px solid #C5CCC6;background:none;padding:10px 13px;font:700 11px Arial,sans-serif;color:#172B32;cursor:pointer}
.gallery-close span{font-size:19px;line-height:.75}
.gallery-figure{position:relative;background:#172B32;display:flex;align-items:center;justify-content:center}
.gallery-figure img{width:100%;height:auto;max-height:calc(86vh - 150px);object-fit:contain;display:block}
.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);border:1px solid #F3F2EDCC;background:#172B32D8;color:#fff;width:43px;height:43px;font-size:22px;cursor:pointer}
.gallery-prev{left:13px}.gallery-next{right:13px}
.gallery-arrow[hidden]{display:none}
.gallery-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:10px;font-weight:700;letter-spacing:.12em;color:#667B7E;padding-top:18px}
@media(max-width:520px){.gallery-open{right:12px;bottom:12px;min-height:38px;gap:9px;font-size:9px}.gallery-dialog-inner{padding:12px}.gallery-toolbar h2{font-size:19px}.gallery-close{padding:9px}.gallery-arrow{width:33px;height:33px}.gallery-footer{font-size:8px}.work-thumb--render img{object-position:center}}
@media(prefers-reduced-motion:reduce){.gallery-open{transition:none}.gallery-open:hover{transform:none}}
