/* Reference-led editorial layout. Existing content, routes and media remain intact. */
/* Contain off-canvas UI (including the reCAPTCHA badge) at the viewport.
   clip avoids creating a nested scroll container, preserving the sticky header. */
html{overflow-x:hidden}
@supports(overflow:clip){html{overflow-x:clip}}
:root{--gc-space:clamp(64px,7vw,112px);--gc-edge:max(6vw,calc((100vw - 1400px)/2))}
.gc-site{background:#080808;color:#f4f4f2}
.gc-site .site-header{height:94px}
.gc-site .header-inner{min-height:94px;padding-inline:4vw}
.gc-site .desktop-nav{display:none}
.gc-site .header-location{font-size:10px;letter-spacing:.18em;gap:12px}
.gc-site .header-actions{margin-left:auto;gap:32px}
.gc-site .menu-toggle{min-width:44px;min-height:44px;justify-content:flex-end}
.gc-site .menu-toggle i{width:20px;height:10px}
.gc-site .menu-toggle>span{display:none}
.gc-site .language-switch{font-size:10px}
.gc-site .brand-home{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .8s ease,visibility 0s linear .8s}
.gc-site .brand-home.is-visible{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
.gc-site .hero{height:clamp(450px,70svh,920px);min-height:450px;max-height:920px}
.gc-site .hero-content{padding:60px 6vw;text-align:center}
.gc-site .hero .eyebrow{font-weight:400;letter-spacing:.2em;font-size:10px}
.gc-site .hero-logo-heading{width:min(560px,76vw);margin:24px auto!important}
.gc-site .hero-subtitle{font-size:12px;letter-spacing:.16em;line-height:1.8;max-width:680px;margin:26px auto 0}
.gc-site .hero-foot{display:none}
.gc-site .hero-cta-bar{padding:32px 6vw 28px}
.gc-site .button{font-size:10px;font-weight:400;letter-spacing:.15em;min-height:48px;padding:15px 28px;gap:26px}
.gc-site .hero-cta-bar .button{min-height:48px;padding:15px 32px;font-size:10px}
.gc-site .quick-contact{text-align:center;padding:10px 6vw 42px;gap:28px}
.gc-site .quick-contact .eyebrow{font-size:9px;font-weight:400;letter-spacing:.18em;color:#aaa}
.gc-site .quick-contact a{font-size:12px}
.gc-site .support-locations{justify-content:center;gap:8px 16px}
.gc-editorial-section{padding:var(--gc-space) var(--gc-edge);border-top:1px solid #252525}
.gc-editorial-section .eyebrow,.gc-site .contact-cta .eyebrow{font-size:10px;font-weight:400;letter-spacing:.18em;color:#aaa;margin:0 0 24px}
.gc-section-intro{text-align:center;max-width:960px;margin-inline:auto}
.gc-editorial-section h2,.gc-site .contact-cta h2{font-size:clamp(36px,4vw,58px);font-weight:500;line-height:1.16;letter-spacing:.12em;text-transform:uppercase}
.gc-site:lang(el) .gc-editorial-section h2,.gc-site:lang(el) .contact-cta h2{font-size:clamp(34px,3.7vw,54px);font-weight:400;letter-spacing:.07em;line-height:1.22}
.gc-section-intro>p:not(.eyebrow){max-width:660px;margin:28px auto 0;font-size:15px;line-height:1.85;color:#b4b4b4;text-wrap:pretty}
.gc-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:64px 0 40px}
.gc-service-grid article{text-align:center;padding:0 24px;border-left:1px solid #353535;display:flex;flex-direction:column;align-items:center;min-width:0}
.gc-service-grid article:first-child{border-left:0}
.gc-card-number{font-size:9px;letter-spacing:.2em;color:#aaa;margin-bottom:25px}
.gc-service-grid h3,.gc-site:lang(el) .gc-service-grid h3{font-size:25px;letter-spacing:.07em;line-height:1.25;text-transform:uppercase;min-height:63px;display:grid;align-items:center;margin:0 0 20px;font-weight:500}
.gc-service-grid p{font-size:14px;line-height:1.85;color:#aaa;margin:0 0 26px}
.gc-outline-link{display:inline-flex;gap:18px;align-items:center;justify-content:center;border:1px solid #888;padding:12px 16px;min-height:44px;font-size:10px;letter-spacing:.09em;text-transform:uppercase;margin-top:auto;transition:background .2s,color .2s}
.gc-outline-link:hover{color:#080808;background:#f5f5f3}
.gc-outline-link span{font-size:18px;line-height:1}
.gc-centered-link{text-align:center;margin-top:36px}
.gc-site .text-link{font-size:10px;font-weight:400;letter-spacing:.13em;gap:28px;border-color:#777;line-height:1.7}
.gc-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,6vw,96px);align-items:center}
.gc-editorial-photo{overflow:hidden;aspect-ratio:4/5;background:#171717}
.gc-editorial-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);object-position:50% 50%}
.gc-editorial-copy{min-width:0}
.gc-editorial-copy h2{margin-bottom:30px}
.gc-editorial-copy>p:not(.eyebrow){font-size:15px;line-height:1.9;color:#b4b4b4;max-width:54ch;margin:0 0 23px;text-wrap:pretty}
.gc-editorial-copy .text-link{margin-top:6px}
.gc-work{background:#101010}
.gc-work-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:56px}
.gc-work-grid .project-card{min-width:0;padding-top:24px;border-top:1px solid #555}
.gc-work-grid .project-photo{aspect-ratio:4/3}
.gc-work-grid .project-image img{filter:grayscale(1);transition:filter .35s,transform .35s}
.gc-work-grid .project-card:hover img{filter:grayscale(0)}
.gc-work-grid .project-caption{padding-top:22px;gap:10px}
.gc-work-grid .project-caption .eyebrow{font-size:9px;letter-spacing:.13em;margin:0 0 13px}
.gc-work-grid .project-caption h3,.gc-site:lang(el) .gc-work-grid .project-caption h3{font-size:clamp(23px,2.2vw,32px);line-height:1.22;letter-spacing:.05em;font-weight:500;text-transform:uppercase}
.gc-work-grid .project-caption-arrow{font-size:22px;align-self:center}
.gc-film-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:56px}
.gc-film-card{display:flex;flex-direction:column;min-width:0}
.gc-film-poster{aspect-ratio:16/9;overflow:hidden;position:relative;background:#171717;margin-bottom:26px}
.gc-film-poster img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);transition:filter .25s}
.gc-film-card:hover .gc-film-poster img{filter:none}
.gc-play-mark{position:absolute;inset:0;display:grid;place-items:center;color:#fff;background:#0003;font-family:Arial,sans-serif;font-size:26px;text-shadow:0 2px 14px #000}
.gc-film-card .eyebrow{font-size:9px;letter-spacing:.2em;margin-bottom:12px}
.gc-film-card h3,.gc-site:lang(el) .gc-film-card h3{font-family:var(--display);font-size:25px;font-weight:500;letter-spacing:.04em;line-height:1.3;text-transform:uppercase;margin:0 0 25px}
.gc-film-action{font-size:10px;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid #555;padding:14px 0;display:flex;justify-content:space-between;margin-top:auto}
.gc-film-action span{font-size:20px;line-height:1}
.gc-support{background:#101010}
.gc-support .gc-editorial-photo{aspect-ratio:4/3}
.gc-support .gc-editorial-photo img{object-position:35% center}
.gc-partner-selection .brand-wall{margin-top:44px}
.gc-partner-selection .brand-tile{min-height:155px;padding:24px 18px}
.gc-site .contact-cta{display:block;text-align:center;background:#080808;padding:var(--gc-space) var(--gc-edge);border-top:1px solid #252525}
.gc-site .contact-cta .cta-copy{max-width:660px;margin:28px auto 0}
.gc-site .contact-cta p:not(.eyebrow){font-size:15px;color:#b4b4b4;line-height:1.8;margin-bottom:32px}
.gc-site .contact-cta .button span{display:none}
.gc-site .site-footer{padding:54px var(--gc-edge) 0;border-top:1px solid #292929}
.gc-site .footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;text-align:center;padding-bottom:40px;max-width:1000px;margin:auto}
.gc-site .footer-grid>div:first-child{grid-column:1/-1;margin-bottom:12px}
.gc-site .footer-logo{width:260px;margin:0 auto 24px}
.gc-site .footer-statement{display:none}
.gc-site .footer-brand span{font-size:10px;letter-spacing:.13em;font-family:Arial,sans-serif}
.gc-site .footer-grid .eyebrow{font-size:9px;font-weight:400;margin-bottom:15px}
.gc-site .footer-grid>div>a{font-size:12px;line-height:1.8;padding:4px 0}
.gc-site .footer-grid .footer-brand{padding:0}
.gc-site .footer-mail{margin-top:8px}
.gc-site .footer-bottom{font-size:10px;letter-spacing:.06em;border-color:#292929;padding:24px 0;color:#aaa}
.gc-site .page-hero{text-align:center;padding:clamp(60px,7vw,105px) var(--gc-edge);border-bottom:1px solid #292929}
.gc-site .page-hero>.eyebrow{color:#aaa;font-size:10px;letter-spacing:.18em;font-weight:400}
.gc-site .page-hero-grid{display:block}
.gc-site .page-hero h1{font-size:clamp(42px,5vw,76px);line-height:1.18;letter-spacing:.12em;max-width:1000px;margin:auto}
.gc-site:lang(el) .page-hero h1{font-size:clamp(38px,4.6vw,66px);letter-spacing:.07em;line-height:1.22}
.gc-site .page-hero .lead{font-size:15px;line-height:1.85;max-width:660px;margin:28px auto 0}
.gc-site .page-banner{margin:0;height:clamp(280px,42vw,600px)}
.gc-site .menu-dialog{background:#080808;padding-inline:6vw}
.gc-site .menu-top{border-color:#292929}
.gc-site .menu-grid nav a,.gc-site:lang(el) .menu-grid nav a{font-size:clamp(22px,2.2vw,31px);letter-spacing:.08em;line-height:1.35;padding:13px 0}
.gc-site .menu-number{font-size:9px}
.gc-site .menu-aside>p:not(.eyebrow){font-family:var(--display);font-size:32px;text-transform:uppercase;letter-spacing:.08em;line-height:1.3}
@media(max-width:1050px){
 .gc-work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 24px}
 .gc-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 0}
 .gc-service-grid article:nth-child(3){border-left:0}
 .gc-service-grid h3{min-height:0}
 .gc-film-grid{gap:20px}
 .gc-film-card h3,.gc-site:lang(el) .gc-film-card h3{font-size:22px}
}
@media(max-width:760px){
 .gc-site .site-header{height:84px}.gc-site .header-inner{min-height:84px}
 .gc-site .header-location{font-size:9px;gap:6px}
 .gc-site .header-actions{gap:18px}
 .gc-site .hero{height:62svh;min-height:430px}
 .gc-site .hero-subtitle{font-size:11px;letter-spacing:.1em}
 .gc-site .quick-contact{grid-template-columns:1fr;padding:12px 6vw 36px;gap:24px}
 .gc-story{grid-template-columns:1fr;gap:36px}
 .gc-editorial-photo{aspect-ratio:4/3}
 .gc-editorial-copy h2{margin-bottom:24px}
 .gc-section-intro>p:not(.eyebrow){font-size:14px}
 .gc-service-grid{margin-top:42px}
 .gc-service-grid article{padding-inline:16px}
 .gc-service-grid h3,.gc-site:lang(el) .gc-service-grid h3{font-size:23px}
 .gc-service-grid p{font-size:13px}
 .gc-film-grid{grid-template-columns:1fr;gap:40px;margin-top:36px}
 .gc-film-card h3,.gc-site:lang(el) .gc-film-card h3{font-size:27px}
 .gc-film-poster{margin-bottom:22px}
 .gc-film-action{margin-top:0}
 .gc-site .menu-grid{gap:30px}
 .gc-site .menu-aside>p:not(.eyebrow){font-size:25px}
}
@media(max-width:500px){
 .gc-site .header-inner{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:12px;padding-inline:16px}
 .gc-site .site-header .brand{position:static;transform:none;width:100%;max-width:none;justify-self:center}
 .gc-site .site-header .brand-logo{max-height:60px}
 .gc-site .header-actions{grid-column:3;margin-left:0}
 .gc-site .header-location{flex-direction:column;gap:0}.gc-site .header-location>span{display:none}
 .gc-site .header-actions{gap:14px}
 .gc-site .hero-content{padding:40px 6vw}
 .gc-site .hero .eyebrow{font-size:9px;line-height:1.8}
 .gc-site .hero-logo-heading{width:82vw}
 .gc-site .hero-subtitle{max-width:29ch;margin-top:22px}
 .gc-editorial-section h2,.gc-site:lang(el) .gc-editorial-section h2,.gc-site .contact-cta h2,.gc-site:lang(el) .contact-cta h2{font-size:34px;letter-spacing:.065em}
 .gc-service-grid article{padding-inline:12px}
 .gc-service-grid h3,.gc-site:lang(el) .gc-service-grid h3{font-size:21px;letter-spacing:.03em;min-height:53px}
 .gc-outline-link{padding:10px 12px;gap:12px;font-size:9px;letter-spacing:.04em}
 .gc-work-grid{grid-template-columns:1fr;gap:32px;margin-top:32px}
 .gc-work-grid .project-caption h3,.gc-site:lang(el) .gc-work-grid .project-caption h3{font-size:30px}
 .gc-work-grid .project-card{padding-top:20px}
 .gc-site .footer-grid{grid-template-columns:1fr;gap:28px}
 .gc-site .footer-grid>div:first-child{grid-column:auto}
 .gc-site .footer-logo{width:240px}
 .gc-site .footer-bottom{flex-direction:column;gap:8px;text-align:center}
}
@media(max-width:360px){
 .gc-service-grid{grid-template-columns:1fr;gap:32px}
 .gc-service-grid article{border-left:0;border-top:1px solid #353535;padding:28px 12px 0}
 .gc-service-grid h3,.gc-site:lang(el) .gc-service-grid h3{font-size:25px;min-height:0}
 .gc-service-grid p{font-size:14px;max-width:30ch}
}
@media(prefers-reduced-motion:reduce){.gc-outline-link,.gc-work-grid .project-image img,.gc-film-poster img,.gc-site .brand-home{transition:none}}
