/* =====================================================================
   GPD — Elementor Widgets · shared frontend styles
   Every widget wraps its markup in `.gpd-scope`, so all rules below are
   namespaced to avoid clashing with the active theme. Style-tab controls
   emit `{{WRAPPER}} .gpd-scope …` selectors (one extra class of
   specificity), so panel edits always win over these base rules.
   ===================================================================== */

.gpd-scope{
	--ink:#10171b;--ink-2:#1b2630;--petrol:#0c5566;--petrol-2:#0a6f86;--petrol-3:#15a3bf;
	--amber:#f2a93b;--amber-2:#d98e22;--sand:#efe9dd;--sand-2:#e3dac8;--paper:#f8f6f1;--white:#fff;
	--line:rgba(16,23,27,.12);--line-soft:rgba(16,23,27,.07);--line-light:rgba(255,255,255,.16);
	--tx:#161f24;--tx-soft:#44535b;--tx-faint:#6b7880;--tx-on-dark:#eaf1f3;--tx-on-dark-soft:rgba(234,241,243,.72);
	--f-display:"Archivo","Helvetica Neue",Arial,sans-serif;
	--f-body:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
	--f-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
	--step--1:clamp(.78rem,.76rem + .1vw,.85rem);
	--step-0:clamp(.98rem,.95rem + .15vw,1.06rem);
	--step-1:clamp(1.15rem,1.08rem + .35vw,1.4rem);
	--step-2:clamp(1.4rem,1.25rem + .7vw,1.95rem);
	--step-3:clamp(1.85rem,1.55rem + 1.4vw,2.9rem);
	--step-4:clamp(2.4rem,1.9rem + 2.5vw,4.2rem);
	--container:1200px;--container-tight:940px;--gut:clamp(1.1rem,4vw,2.2rem);
	--sp-section:clamp(3.6rem,7vw,7rem);--radius:4px;--radius-lg:10px;
	--shadow-sm:0 1px 2px rgba(16,23,27,.06),0 2px 8px rgba(16,23,27,.05);
	--shadow:0 10px 30px -12px rgba(16,23,27,.22);
	--shadow-lg:0 30px 60px -22px rgba(12,85,102,.35);
	font-family:var(--f-body);font-size:var(--step-0);line-height:1.65;color:var(--tx);
}
.gpd-scope *,.gpd-scope *::before,.gpd-scope *::after{box-sizing:border-box}
.gpd-scope img,.gpd-scope svg,.gpd-scope video{max-width:100%;height:auto;display:block}
.gpd-scope a{color:var(--petrol-2);text-decoration:none}
.gpd-scope a:hover{color:var(--petrol)}
.gpd-scope ul,.gpd-scope ol{margin:0;padding:0}
.gpd-scope h1,.gpd-scope h2,.gpd-scope h3,.gpd-scope h4{margin:0;font-family:var(--f-display);font-weight:700;line-height:1.08;letter-spacing:-.01em;color:var(--tx)}
.gpd-scope p{margin:0 0 1rem}
.gpd-scope strong{font-weight:600;color:var(--tx)}

/* ---------- Helpers ---------- */
.gpd-scope .container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gut)}
.gpd-scope .eyebrow{font-family:var(--f-mono);font-size:var(--step--1);font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--petrol);display:inline-flex;align-items:flex-start;gap:.6rem;margin:0 0 1rem}
.gpd-scope .eyebrow::before{content:"";width:26px;height:2px;background:var(--amber);display:inline-block;flex:none;margin-top:.62em}
.gpd-scope .eyebrow.on-dark{color:var(--amber)}
.gpd-scope .eyebrow.on-dark::before{background:var(--amber)}
.gpd-scope .lead{font-size:var(--step-1);line-height:1.5;color:var(--tx-soft)}
.gpd-scope .center{text-align:center}

/* ---------- Buttons ---------- */
.gpd-scope .btn{--bg:var(--amber);--fg:var(--ink);display:inline-flex;align-items:center;gap:.6rem;font-family:var(--f-display);font-weight:600;font-size:var(--step-0);letter-spacing:.01em;line-height:1;padding:.95rem 1.6rem;border-radius:var(--radius);border:1.5px solid transparent;background:var(--bg);color:var(--fg);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease;text-align:center}
.gpd-scope .btn svg{width:1.05em;height:1.05em;flex:none}
.gpd-scope .btn:hover{transform:translateY(-2px);box-shadow:0 12px 24px -10px rgba(242,169,59,.6);color:var(--ink)}
.gpd-scope .btn--ghost{--bg:transparent;--fg:var(--tx);border-color:var(--line)}
.gpd-scope .btn--ghost:hover{box-shadow:none;border-color:var(--petrol);color:var(--petrol)}
.gpd-scope .btn--on-dark{--bg:var(--amber);--fg:var(--ink)}
.gpd-scope .btn--outline-light{--bg:transparent;--fg:#fff;border-color:var(--line-light)}
.gpd-scope .btn--outline-light:hover{--bg:rgba(255,255,255,.08);box-shadow:none;color:#fff;border-color:rgba(255,255,255,.4)}
.gpd-scope .btn--lg{padding:1.15rem 2rem;font-size:var(--step-1)}

/* ---------- Section system ---------- */
.gpd-scope.gpd-section{display:block}
.gpd-scope .section{padding-block:var(--sp-section)}
.gpd-scope .section--sand{background:var(--sand)}
.gpd-scope .section--paper{background:var(--paper)}
.gpd-scope .section--ink{background:var(--ink);color:var(--tx-on-dark)}
.gpd-scope .section--ink h2,.gpd-scope .section--ink h3{color:#fff}
.gpd-scope .section-head{max-width:62ch;margin-bottom:clamp(2rem,4vw,3.2rem)}
.gpd-scope .section-head.center{margin-inline:auto}
.gpd-scope .section-head h2{font-size:var(--step-3);margin-bottom:1rem}
.gpd-scope .section--ink .section-head .lead{color:var(--tx-on-dark-soft)}
.gpd-scope .strata{display:block;width:100%;height:34px;color:var(--amber)}
.gpd-scope .strata--flip{transform:scaleY(-1)}

/* ---------- Hero ---------- */
.gpd-scope .hero{position:relative;background:var(--ink);color:var(--tx-on-dark);overflow:hidden;isolation:isolate}
.gpd-scope .hero::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(120% 90% at 80% -10%,#173039 0%,var(--ink) 55%)}
.gpd-scope .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center;padding-block:clamp(3rem,6vw,5.5rem)}
.gpd-scope .hero h1{font-size:var(--step-4);color:#fff;font-weight:800;letter-spacing:-.025em;margin-bottom:1.3rem}
.gpd-scope .hero h1 .hl{color:var(--amber)}
.gpd-scope .hero-copy p{color:var(--tx-on-dark-soft);font-size:var(--step-1);max-width:34ch;margin-bottom:1.9rem}
.gpd-scope .hero-actions{display:flex;gap:.9rem;flex-wrap:wrap;margin-bottom:2.2rem}
.gpd-scope .hero-figure{position:relative}
.gpd-scope .hero-figure svg,.gpd-scope .hero-figure img{width:100%;height:auto;filter:drop-shadow(0 30px 50px rgba(0,0,0,.4));border-radius:var(--radius-lg)}
.gpd-scope .hero .eyebrow{font-size:.7rem;letter-spacing:.12em;white-space:nowrap;line-height:1.2}
.gpd-scope .hero .eyebrow::before{margin-top:.5em}
.gpd-scope .hero-bg{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.gpd-scope .hero-bg svg{position:absolute;inset:0;width:100%;height:100%;opacity:.55}
.gpd-scope .hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--ink) 8%,rgba(16,23,27,.55) 38%,transparent 72%)}
.gpd-scope .hero-bg .flow{stroke-dasharray:10 14;animation:gpd-flow 3s linear infinite}
.gpd-scope .hero-bg .flow.f2{animation-duration:4.8s}
.gpd-scope .hero-bg .flow.f3{animation-duration:2.5s}
.gpd-scope .hero-bg .bub{transform-box:fill-box;transform-origin:center;opacity:0;animation-name:gpd-rise;animation-timing-function:ease-in;animation-iteration-count:infinite}
.gpd-scope .hero-bg .drift{animation:gpd-drift 16s ease-in-out infinite alternate}
.gpd-scope .hero-bg .tick{animation:gpd-tick 2.8s ease-in-out infinite}

/* shared water-flow anim (used by hero + featured tile + media cards) */
.gpd-scope .flow{stroke-dasharray:9 11;animation:gpd-flow 2.6s linear infinite}
@keyframes gpd-flow{to{stroke-dashoffset:-40}}
@keyframes gpd-rise{0%{transform:translateY(0) scale(.7);opacity:0}12%{opacity:.55}85%{opacity:.4}100%{transform:translateY(-360px) scale(1);opacity:0}}
@keyframes gpd-drift{from{transform:translateX(0)}to{transform:translateX(28px)}}
@keyframes gpd-tick{0%,100%{opacity:.25}50%{opacity:.9}}

/* ---------- Stat / trust band ---------- */
.gpd-scope .statband{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-light);border:1px solid var(--line-light);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:clamp(2.6rem,5vw,4rem)}
.gpd-scope .statband .stat{background:var(--ink);padding:1.8rem 1.5rem}
.gpd-scope .statband .stat b{font-family:var(--f-display);font-size:var(--step-3);font-weight:800;color:var(--amber);display:block;line-height:1}
.gpd-scope .statband .stat span{display:block;margin-top:.5rem;color:var(--tx-on-dark-soft);font-size:var(--step--1);letter-spacing:.04em}

/* ---------- Services bento ---------- */
.gpd-scope .svc-bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(158px,1fr);gap:clamp(.7rem,1.4vw,1.1rem)}
.gpd-scope .svc-tile{position:relative;display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line-soft);border-radius:var(--radius-lg);padding:1.4rem;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.gpd-scope .svc-tile:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:transparent}
.gpd-scope .svc-tile::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--petrol);transform:scaleY(0);transform-origin:top;transition:transform .25s ease}
.gpd-scope .svc-tile:hover::before{transform:scaleY(1)}
.gpd-scope .svc-tile .svc-n{position:absolute;top:1rem;right:1.1rem;font-family:var(--f-mono);font-size:.78rem;color:var(--tx-faint)}
.gpd-scope .svc-tile .svc-ic{width:42px;height:42px;border-radius:9px;background:rgba(12,85,102,.09);color:var(--petrol);display:flex;align-items:center;justify-content:center;margin-bottom:.9rem;flex:none}
.gpd-scope .svc-tile .svc-ic svg{width:23px;height:23px}
.gpd-scope .svc-tile h3{font-size:var(--step-0);margin-bottom:.3rem;line-height:1.2}
.gpd-scope .svc-tile p{font-size:.85rem;color:var(--tx-soft);margin:0;flex:1}
.gpd-scope .svc-tile .svc-go{align-self:flex-start;margin-top:.85rem;color:var(--petrol);transition:transform .2s ease}
.gpd-scope .svc-tile .svc-go svg{width:18px;height:18px;display:block}
.gpd-scope .svc-tile:hover .svc-go{transform:translateX(5px)}
.gpd-scope .svc-tile--feat{grid-column:span 2;grid-row:span 2;color:#fff;border-color:transparent;justify-content:flex-end;padding:clamp(1.5rem,2.5vw,2rem);background:linear-gradient(140deg,#0c5566 0%,#0a3f4d 58%,#0b1b20 120%)}
.gpd-scope .svc-tile--feat::before{display:none}
.gpd-scope .svc-tile--feat:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.gpd-scope .svc-tile--feat .svc-feat-bg{position:absolute;inset:0;z-index:0;opacity:.6}
.gpd-scope .svc-tile--feat .svc-feat-bg svg{width:100%;height:100%}
.gpd-scope .svc-tile--feat > *{position:relative;z-index:1}
.gpd-scope .svc-tile--feat .svc-tag{font-family:var(--f-mono);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--amber);margin-bottom:auto}
.gpd-scope .svc-tile--feat .svc-ic{width:54px;height:54px;background:rgba(255,255,255,.1);color:#fff;margin:1.4rem 0 1rem}
.gpd-scope .svc-tile--feat .svc-ic svg{width:28px;height:28px}
.gpd-scope .svc-tile--feat h3{font-size:var(--step-2);color:#fff;margin-bottom:.6rem}
.gpd-scope .svc-tile--feat p{font-size:var(--step-0);color:rgba(255,255,255,.82);flex:none;max-width:34ch}
.gpd-scope .svc-tile--feat .more{margin-top:1.1rem;color:var(--amber);font-family:var(--f-display);font-weight:600;display:inline-flex;align-items:center;gap:.45rem}
.gpd-scope .svc-tile--feat .more svg{width:16px;height:16px;transition:transform .2s ease}
.gpd-scope .svc-tile--feat:hover .more svg{transform:translateX(5px)}
.gpd-scope .svc-tile--cta{background:var(--ink);color:#fff;border-color:transparent;flex-direction:column;align-items:flex-start;justify-content:center;gap:.7rem}
.gpd-scope .svc-tile--cta::before{display:none}
.gpd-scope .svc-tile--cta:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.gpd-scope .svc-tile--cta span{font-family:var(--f-display);font-weight:700;font-size:var(--step-1);color:#fff;line-height:1.15}
.gpd-scope .svc-tile--cta svg{width:28px;height:28px;color:var(--amber);transition:transform .2s ease}
.gpd-scope .svc-tile--cta:hover svg{transform:translateX(6px)}

/* ---------- Split content (About) ---------- */
.gpd-scope .split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center}
.gpd-scope .split--media-right .split-media{order:2}
.gpd-scope .split-body h2{font-size:var(--step-3);margin-bottom:1.2rem}
.gpd-scope .feature-list{list-style:none;display:grid;gap:.85rem;margin:1.4rem 0}
.gpd-scope .feature-list li{display:flex;gap:.8rem;align-items:flex-start;font-size:var(--step-0)}
.gpd-scope .feature-list .ck{width:24px;height:24px;border-radius:50%;background:rgba(12,85,102,.1);color:var(--petrol);display:flex;align-items:center;justify-content:center;flex:none;margin-top:1px}
.gpd-scope .feature-list .ck svg{width:13px;height:13px}
.gpd-scope .media-card{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);background:var(--ink)}
.gpd-scope .media-card svg,.gpd-scope .media-card img{width:100%;display:block}

/* ---------- Process ---------- */
.gpd-scope .process{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;counter-reset:step}
.gpd-scope .process::before{content:"";position:absolute;left:0;right:0;top:30px;height:2px;background:repeating-linear-gradient(90deg,var(--amber) 0 10px,transparent 10px 20px)}
.gpd-scope .process .step{padding:0 1.1rem;position:relative}
.gpd-scope .process .step .dot{width:62px;height:62px;border-radius:50%;background:var(--ink);color:var(--amber);border:2px solid var(--amber);display:flex;align-items:center;justify-content:center;font-family:var(--f-mono);font-weight:600;font-size:.95rem;position:relative;z-index:1;margin-bottom:1.1rem}
.gpd-scope .process .step .dot small{position:absolute;bottom:-7px;background:var(--paper);padding:0 4px;font-size:.6rem;color:var(--tx-faint)}
.gpd-scope .process .step h3{font-size:var(--step-1);margin-bottom:.45rem}
.gpd-scope .process .step p{font-size:var(--step--1);color:var(--tx-soft)}

/* ---------- Why feats (editorial hairline grid) ---------- */
.gpd-scope .why-feats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line-light)}
.gpd-scope .why-feat{position:relative;padding:clamp(1.6rem,3vw,2.2rem) clamp(1.3rem,2.5vw,1.9rem);border-bottom:1px solid var(--line-light);border-right:1px solid var(--line-light);transition:background .25s ease}
.gpd-scope .why-feat:hover{background:rgba(255,255,255,.045)}
.gpd-scope .why-feat::before{content:"";position:absolute;left:0;top:-1px;height:2px;width:0;background:var(--amber);transition:width .35s ease}
.gpd-scope .why-feat:hover::before{width:64px}
.gpd-scope .why-feat .wf-n{font-family:var(--f-mono);font-size:.78rem;color:var(--amber);letter-spacing:.08em}
.gpd-scope .why-feat .wf-ic{width:38px;height:38px;color:var(--amber);margin:1rem 0 .85rem}
.gpd-scope .why-feat .wf-ic svg{width:100%;height:100%}
.gpd-scope .why-feat h3{font-size:var(--step-1);color:#fff;margin-bottom:.5rem}
.gpd-scope .why-feat p{color:var(--tx-on-dark-soft);font-size:var(--step-0);margin:0}
.gpd-scope .why-feats > .why-feat:nth-child(3n){border-right:none}

/* ---------- Location cards ---------- */
.gpd-scope .loc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
.gpd-scope .loc-card{background:var(--white);border:1px solid var(--line-soft);border-radius:var(--radius-lg);padding:1.5rem;transition:transform .2s ease,box-shadow .2s ease}
.gpd-scope .loc-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.gpd-scope .loc-card .pin{color:var(--petrol);width:24px;height:24px;margin-bottom:.8rem}
.gpd-scope .loc-card h3{font-size:var(--step-1);margin-bottom:.35rem}
.gpd-scope .loc-card p{font-size:.9rem;color:var(--tx-soft);margin-bottom:1rem}
.gpd-scope .loc-card .more{font-family:var(--f-display);font-weight:600;color:var(--petrol);font-size:.9rem;display:inline-flex;align-items:center;gap:.4rem}
.gpd-scope .loc-card .more svg{width:15px;height:15px;flex:none;transition:transform .2s ease}
.gpd-scope .loc-card:hover .more svg{transform:translateX(4px)}

/* ---------- FAQ ---------- */
.gpd-scope .faq{max-width:var(--container-tight);margin-inline:auto;display:grid;gap:.7rem}
.gpd-scope .faq details{background:var(--white);border:1px solid var(--line-soft);border-radius:var(--radius-lg);overflow:hidden}
.gpd-scope .faq summary{cursor:pointer;list-style:none;padding:1.15rem 1.4rem;display:flex;justify-content:space-between;gap:1rem;align-items:center;font-family:var(--f-display);font-weight:600;font-size:var(--step-1)}
.gpd-scope .faq summary::-webkit-details-marker{display:none}
.gpd-scope .faq summary .pl{width:22px;height:22px;flex:none;position:relative;transition:transform .25s ease}
.gpd-scope .faq summary .pl::before,.gpd-scope .faq summary .pl::after{content:"";position:absolute;background:var(--petrol);inset:50% 0 auto 0;height:2px;transform:translateY(-50%)}
.gpd-scope .faq summary .pl::after{transform:translateY(-50%) rotate(90deg)}
.gpd-scope .faq details[open] summary .pl{transform:rotate(135deg)}
.gpd-scope .faq .faq-body{padding:0 1.4rem 1.3rem;color:var(--tx-soft);font-size:var(--step-0)}
.gpd-scope .faq .faq-body p:last-child{margin:0}

/* ---------- Image frame + gallery teaser ---------- */
.gpd-scope .shot-frame{display:block;position:relative;aspect-ratio:16/10;overflow:hidden;border-radius:var(--radius-lg);background:linear-gradient(135deg,#13242b 0%,#0c5566 150%);isolation:isolate}
.gpd-scope .shot-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:2}
.gpd-scope .shot-frame::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0 38px,rgba(242,169,59,.12) 38px 40px),radial-gradient(120% 140% at 82% -15%,rgba(21,163,191,.28),transparent 55%)}
.gpd-scope .shot-frame::after{content:"Nuotrauka";position:absolute;z-index:1;left:0;right:0;bottom:13px;text-align:center;font-family:var(--f-mono);font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(234,241,243,.55)}
.gpd-scope .img-missing > img,.gpd-scope .gtile.img-missing img{display:none}
.gpd-scope .gteaser{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2vw,1.5rem)}
.gpd-scope .gtile{display:flex;flex-direction:column;padding:0;border:1px solid var(--line-soft);background:var(--white);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;text-align:left;font:inherit;color:inherit;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.gpd-scope .gtile:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:transparent}
.gpd-scope .gtile .shot-frame{border-radius:0;flex:none}
.gpd-scope .gtile .shot-frame .zoom{position:absolute;z-index:3;top:.7rem;right:.7rem;width:34px;height:34px;border-radius:50%;background:rgba(16,23,27,.55);color:#fff;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.85);transition:.2s ease;backdrop-filter:blur(2px)}
.gpd-scope .gtile:hover .shot-frame .zoom{opacity:1;transform:none}
.gpd-scope .gtile .shot-frame .zoom svg{width:17px;height:17px}
.gpd-scope .gteaser .gtile{position:relative;border-radius:var(--radius-lg)}
.gpd-scope .gteaser .gtile .shot-frame{border-radius:var(--radius-lg);aspect-ratio:4/3}
.gpd-scope .gteaser .gtile::after{content:attr(data-caption);position:absolute;left:0;right:0;bottom:0;z-index:5;padding:1.7rem 1rem .9rem;font-family:var(--f-display);font-weight:600;font-size:.95rem;line-height:1.28;color:#fff;text-align:left;pointer-events:none;background:linear-gradient(to top,rgba(8,12,14,.9) 8%,rgba(8,12,14,.25) 65%,transparent)}
.gpd-scope .gteaser .gtile .shot-frame::after{content:"Nuotrauka netrukus";bottom:auto;top:40%;transform:translateY(-50%)}

/* ---------- Lightbox (created by JS, appended to <body>) ---------- */
.gpd-lb{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;background:rgba(8,12,14,.93);padding:clamp(1rem,4vw,3rem)}
.gpd-lb.open{display:flex}
.gpd-lb-fig{margin:0;max-width:1080px;width:100%}
.gpd-lb-frame{position:relative;background:linear-gradient(135deg,#13242b,#0c5566);border-radius:4px;overflow:hidden;min-height:200px;aspect-ratio:16/10;display:flex;align-items:center;justify-content:center}
.gpd-lb-frame img{position:relative;z-index:2;max-width:100%;max-height:78vh;width:auto;height:auto;display:block}
.gpd-lb-cap{color:rgba(234,241,243,.72);text-align:center;font-family:var(--f-mono);font-size:.82rem;letter-spacing:.02em;margin-top:1rem}
.gpd-lb-close{position:absolute;top:clamp(1rem,3vw,2rem);right:clamp(1rem,3vw,2rem);border:1px solid rgba(255,255,255,.16);background:rgba(16,23,27,.6);color:#fff;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:26px;line-height:1;z-index:2}
.gpd-lb-close:hover{background:#0c5566}
.gpd-lb-nav{position:absolute;top:50%;transform:translateY(-50%);border:1px solid rgba(255,255,255,.16);background:rgba(16,23,27,.6);color:#fff;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:30px;line-height:1;z-index:2}
.gpd-lb-nav:hover{background:#0c5566}
.gpd-lb-prev{left:clamp(.5rem,3vw,2rem)}
.gpd-lb-next{right:clamp(.5rem,3vw,2rem)}
@media (max-width:560px){.gpd-lb-nav{width:42px;height:42px;font-size:26px}}

/* ---------- CTA band ---------- */
.gpd-scope .cta-band{position:relative;color:#fff;border-radius:var(--radius-lg);padding:clamp(2.4rem,5vw,4rem);overflow:hidden;isolation:isolate;background:linear-gradient(125deg,#0c5566 0%,#0a4150 52%,#0b1b20 128%);border:1px solid rgba(255,255,255,.09);box-shadow:var(--shadow-lg)}
.gpd-scope .cta-band::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(60% 120% at 100% 0%, rgba(21,163,191,.4) 0%, transparent 55%),radial-gradient(50% 80% at 0% 110%, rgba(242,169,59,.12) 0%, transparent 60%),repeating-linear-gradient(0deg, transparent 0 31px, rgba(255,255,255,.035) 31px 32px)}
.gpd-scope .cta-band::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:repeating-linear-gradient(90deg,var(--amber) 0 18px,transparent 18px 30px)}
.gpd-scope .cta-band .inner{display:flex;align-items:center;justify-content:space-between;gap:clamp(1.6rem,4vw,3rem);flex-wrap:wrap}
.gpd-scope .cta-band h2{font-size:var(--step-3);color:#fff;max-width:18ch;letter-spacing:-.015em}
.gpd-scope .cta-band p{color:rgba(255,255,255,.82);margin:.7rem 0 0;max-width:44ch}
.gpd-scope .cta-band .actions{display:flex;gap:.8rem;flex-wrap:wrap}
.gpd-scope .cta-band .btn--on-dark:hover{box-shadow:0 14px 30px -10px rgba(242,169,59,.55)}

/* ---------- Reveal-on-scroll (JS-gated so content is never hidden without JS) ---------- */
.gpd-scope.gpd-js .reveal{opacity:0;transform:translateY(18px)}
.gpd-scope.gpd-js .reveal.in{opacity:1;transform:none;transition:opacity .6s ease,transform .6s ease}

/* ---------- Responsive ---------- */
@media (max-width:980px){.gpd-scope .svc-bento{grid-template-columns:repeat(2,1fr)}.gpd-scope .svc-tile--feat{grid-column:span 2;grid-row:auto}}
@media (max-width:920px){.gpd-scope .hero-grid,.gpd-scope .split{gap:2rem}}
@media (max-width:880px){
	.gpd-scope .hero-grid{grid-template-columns:1fr;gap:2rem}
	.gpd-scope .hero-figure{order:-1;max-width:520px}
	.gpd-scope .hero-copy p{max-width:46ch}
	.gpd-scope .split{grid-template-columns:1fr;gap:2rem}
	.gpd-scope .split--media-right .split-media{order:0}
	.gpd-scope .loc-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:860px){
	.gpd-scope .why-feats{grid-template-columns:repeat(2,1fr)}
	.gpd-scope .why-feats > .why-feat:nth-child(3n){border-right:1px solid var(--line-light)}
	.gpd-scope .why-feats > .why-feat:nth-child(2n){border-right:none}
	.gpd-scope .process{grid-template-columns:1fr;gap:1.6rem}
	.gpd-scope .process::before{left:30px;top:0;bottom:0;right:auto;width:2px;height:auto;background:repeating-linear-gradient(180deg,var(--amber) 0 10px,transparent 10px 20px)}
	.gpd-scope .process .step{padding:0 0 0 5rem}
	.gpd-scope .process .step .dot{position:absolute;left:0;top:0;margin:0}
}
@media (max-width:760px){.gpd-scope .statband{grid-template-columns:repeat(2,1fr)}.gpd-scope .gteaser{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){
	.gpd-scope .loc-grid{grid-template-columns:1fr}
	.gpd-scope .why-feats{grid-template-columns:1fr}
	.gpd-scope .why-feats > .why-feat{border-right:none}
}
@media (max-width:520px){.gpd-scope .svc-bento{grid-template-columns:1fr;grid-auto-rows:auto}.gpd-scope .svc-tile--feat{grid-column:span 1}.gpd-scope .statband{grid-template-columns:1fr}}
@media (max-width:460px){.gpd-scope .gteaser{grid-template-columns:1fr}}
@media (max-width:430px){.gpd-scope .hero .eyebrow{white-space:normal}}
@media (prefers-reduced-motion:reduce){
	.gpd-scope .flow,.gpd-scope .hero-bg .flow,.gpd-scope .hero-bg .bub,.gpd-scope .hero-bg .drift,.gpd-scope .hero-bg .tick{animation:none}
	.gpd-scope .hero-bg .bub{opacity:.4}
	.gpd-scope.gpd-js .reveal{opacity:1;transform:none}
}

/* =====================================================================
   Inner-page components (page hero, article, sidebar, cards, contact,
   full gallery) — used by the non-home page widgets.
   ===================================================================== */

/* ---------- Breadcrumbs ---------- */
.gpd-scope .crumbs{font-family:var(--f-mono);font-size:var(--step--1);color:var(--tx-on-dark-soft);display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}
.gpd-scope .crumbs a{color:var(--tx-on-dark-soft)}
.gpd-scope .crumbs a:hover{color:var(--amber)}
.gpd-scope .crumbs span[aria-current]{color:var(--amber)}

/* ---------- Page hero (inner) ---------- */
.gpd-scope .page-hero{background:var(--ink);color:var(--tx-on-dark);position:relative;overflow:hidden;isolation:isolate}
.gpd-scope .page-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(110% 130% at 85% -20%, #173039 0%, var(--ink) 60%)}
.gpd-scope .page-hero .inner{padding-block:clamp(2.6rem,5vw,4.2rem);max-width:60ch}
.gpd-scope .page-hero h1{font-size:var(--step-4);color:#fff;margin:1.1rem 0 1rem;font-weight:800}
.gpd-scope .page-hero p{color:var(--tx-on-dark-soft);font-size:var(--step-1);margin:0;max-width:48ch}

/* ---------- Prose / rich text ---------- */
.gpd-scope .prose{max-width:72ch}
.gpd-scope .prose h2{font-size:var(--step-2);margin:2.4rem 0 1rem}
.gpd-scope .prose h3{font-size:var(--step-1);margin:1.8rem 0 .7rem}
.gpd-scope .prose p{color:var(--tx-soft)}
.gpd-scope .prose ul{list-style:none;display:grid;gap:.6rem;margin:1.1rem 0}
.gpd-scope .prose ul li{padding-left:1.6rem;position:relative;color:var(--tx-soft)}
.gpd-scope .prose ul li::before{content:"";position:absolute;left:0;top:.6em;width:8px;height:8px;background:var(--amber);transform:rotate(45deg)}
.gpd-scope .prose strong{color:var(--tx)}
.gpd-scope .prose .callout{background:var(--sand);border-left:3px solid var(--petrol);padding:1.2rem 1.4rem;border-radius:0 var(--radius) var(--radius) 0;margin:1.6rem 0}
.gpd-scope .prose .callout p{margin:0;color:var(--tx)}

/* ---------- Layout with sidebar ---------- */
.gpd-scope .layout-side{display:grid;grid-template-columns:1fr 320px;gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
.gpd-scope .aside{position:sticky;top:96px;display:grid;gap:1.2rem}
.gpd-scope .aside-card{background:var(--white);border:1px solid var(--line-soft);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-sm)}
.gpd-scope .aside-card h3{font-size:var(--step-1);margin-bottom:.4rem}
.gpd-scope .aside-card.petrol{background:var(--ink);color:#fff}
.gpd-scope .aside-card.petrol h3{color:#fff}
.gpd-scope .aside-card.petrol p{color:var(--tx-on-dark-soft)}
.gpd-scope .aside-card .phone{font-family:var(--f-display);font-weight:800;font-size:var(--step-2);color:#fff;display:block;margin:.4rem 0 1rem;letter-spacing:-.01em}
.gpd-scope .aside-list{list-style:none;display:grid;gap:.2rem}
.gpd-scope .aside-list a{display:flex;justify-content:space-between;gap:.5rem;padding:.55rem .2rem;border-bottom:1px solid var(--line-soft);color:var(--tx);font-size:.93rem}
.gpd-scope .aside-list a:hover{color:var(--petrol)}
.gpd-scope .aside-list a[aria-current]{color:var(--petrol);font-weight:600}
.gpd-scope .aside-list a svg{width:14px;height:14px;color:var(--tx-faint);flex:none}

/* ---------- Tag chips ---------- */
.gpd-scope .chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.2rem 0}
.gpd-scope .chip{font-family:var(--f-mono);font-size:.76rem;letter-spacing:.03em;padding:.35rem .7rem;border:1px solid var(--line);border-radius:100px;color:var(--tx-soft);background:var(--white)}
.gpd-scope .section--ink .chip{background:rgba(255,255,255,.05);border-color:var(--line-light);color:var(--tx-on-dark-soft)}

/* ---------- Card grid (s-card) ---------- */
.gpd-scope .grid{display:grid;gap:clamp(1rem,2vw,1.5rem)}
.gpd-scope .grid--3{grid-template-columns:repeat(3,1fr)}
.gpd-scope .grid--4{grid-template-columns:repeat(4,1fr)}
.gpd-scope .grid--2{grid-template-columns:repeat(2,1fr)}
.gpd-scope .s-card{position:relative;background:var(--white);border:1px solid var(--line-soft);border-radius:var(--radius-lg);padding:1.7rem 1.5rem 1.5rem;display:flex;flex-direction:column;transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;overflow:hidden}
.gpd-scope .s-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--petrol);transform:scaleY(0);transform-origin:top;transition:transform .25s ease}
.gpd-scope .s-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:transparent}
.gpd-scope .s-card:hover::before{transform:scaleY(1)}
.gpd-scope .s-card .ic{width:46px;height:46px;border-radius:9px;background:rgba(12,85,102,.09);color:var(--petrol);display:flex;align-items:center;justify-content:center;margin-bottom:1.1rem}
.gpd-scope .s-card .ic svg{width:24px;height:24px}
.gpd-scope .s-card .num{position:absolute;top:1.2rem;right:1.3rem;font-family:var(--f-mono);font-size:.78rem;color:var(--tx-faint);letter-spacing:.05em}
.gpd-scope .s-card h3{font-size:var(--step-1);margin-bottom:.5rem}
.gpd-scope .s-card p{font-size:var(--step-0);color:var(--tx-soft);margin-bottom:1.1rem;flex:1}
.gpd-scope .s-card .more{font-family:var(--f-display);font-weight:600;font-size:.92rem;color:var(--petrol);display:inline-flex;align-items:center;gap:.4rem}
.gpd-scope .s-card .more svg{width:15px;height:15px;transition:transform .2s ease}
.gpd-scope .s-card:hover .more svg{transform:translateX(4px)}

/* ---------- Inline figure (shot) ---------- */
.gpd-scope .shot{margin:1.8rem 0}
.gpd-scope .shot .shot-frame{box-shadow:var(--shadow)}
.gpd-scope .shot figcaption{font-family:var(--f-mono);font-size:.76rem;letter-spacing:.02em;color:var(--tx-faint);padding:.7rem .2rem 0;display:flex;gap:.5rem;align-items:flex-start}
.gpd-scope .shot figcaption::before{content:"";flex:none;width:18px;height:2px;background:var(--amber);margin-top:.55em}

/* ---------- Contact ---------- */
.gpd-scope .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,3rem);align-items:start}
.gpd-scope .contact-rows{display:grid;gap:1.1rem}
.gpd-scope .crow{display:flex;gap:1rem;align-items:flex-start;padding:1.2rem 1.3rem;background:var(--white);border:1px solid var(--line-soft);border-radius:var(--radius-lg)}
.gpd-scope .crow .ic{width:46px;height:46px;border-radius:10px;background:var(--ink);color:var(--amber);flex:none;display:flex;align-items:center;justify-content:center}
.gpd-scope .crow .ic svg{width:22px;height:22px}
.gpd-scope .crow .lbl{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--tx-faint);margin-bottom:.2rem}
.gpd-scope .crow .val{font-family:var(--f-display);font-weight:600;font-size:var(--step-1);color:var(--tx)}
.gpd-scope .crow .val a{color:var(--tx)}
.gpd-scope .crow .val a:hover{color:var(--petrol)}
.gpd-scope .crow small{display:block;color:var(--tx-soft);font-family:var(--f-body);font-weight:400;font-size:.86rem}
.gpd-scope .form{background:var(--white);border:1px solid var(--line-soft);border-radius:var(--radius-lg);padding:clamp(1.4rem,3vw,2rem);box-shadow:var(--shadow-sm)}
.gpd-scope .form .fld{margin-bottom:1.05rem}
.gpd-scope .form label{display:block;font-family:var(--f-display);font-weight:600;font-size:.9rem;margin-bottom:.4rem}
.gpd-scope .form input,.gpd-scope .form textarea,.gpd-scope .form select{width:100%;font-family:var(--f-body);font-size:var(--step-0);padding:.85rem 1rem;border:1.5px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--tx)}
.gpd-scope .form input:focus,.gpd-scope .form textarea:focus,.gpd-scope .form select:focus{outline:none;border-color:var(--petrol);box-shadow:0 0 0 3px rgba(12,85,102,.12)}
.gpd-scope .form textarea{min-height:130px;resize:vertical}
.gpd-scope .form .hint{font-size:.8rem;color:var(--tx-faint);margin-top:.8rem}
.gpd-scope .form .ok{display:none;background:rgba(12,85,102,.08);border:1px solid var(--petrol);color:var(--petrol);padding:1rem;border-radius:var(--radius);font-size:.92rem;margin-top:1rem}
.gpd-scope .form .ok.show{display:block}

/* ---------- Full gallery + filter ---------- */
.gpd-scope .gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(.8rem,2vw,1.2rem)}
.gpd-scope .gallery .gtile .shot-frame::after{content:"Nuotrauka netrukus"}
.gpd-scope .gtile-cap{display:block;padding:.85rem 1rem;font-family:var(--f-display);font-weight:600;font-size:.96rem;color:var(--tx)}
.gpd-scope .gtile-cap small{display:block;font-family:var(--f-mono);font-weight:400;font-size:.72rem;letter-spacing:.03em;color:var(--tx-faint);margin-top:.25rem;text-transform:none}
.gpd-scope .gallery-filter{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:clamp(1.4rem,3vw,2.2rem)}
.gpd-scope .gallery-filter button{font-family:var(--f-mono);font-size:.78rem;letter-spacing:.03em;padding:.45rem .9rem;border:1px solid var(--line);border-radius:100px;background:var(--white);color:var(--tx-soft);cursor:pointer;transition:.18s ease}
.gpd-scope .gallery-filter button:hover{border-color:var(--petrol);color:var(--petrol)}
.gpd-scope .gallery-filter button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.gpd-scope .gtile[hidden]{display:none}

/* ---------- Responsive (inner-page blocks) ---------- */
@media (max-width:920px){.gpd-scope .layout-side{grid-template-columns:1fr}.gpd-scope .aside{position:static}}
@media (max-width:880px){.gpd-scope .contact-grid{grid-template-columns:1fr}.gpd-scope .gallery{grid-template-columns:repeat(2,1fr)}.gpd-scope .grid--4{grid-template-columns:repeat(2,1fr)}.gpd-scope .grid--3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.gpd-scope .grid--4,.gpd-scope .grid--3,.gpd-scope .grid--2{grid-template-columns:1fr}}
@media (max-width:520px){.gpd-scope .gallery{grid-template-columns:1fr}}

/* =====================================================================
   Page hero — two-column (with side image / illustration)
   ===================================================================== */
.gpd-scope .page-hero--split .hero-grid{display:grid;grid-template-columns:1.05fr .8fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center;padding-block:clamp(2.6rem,5vw,4.2rem)}
.gpd-scope .page-hero--split .inner{padding-block:0;max-width:none}
.gpd-scope .page-hero--split .hero-figure svg,.gpd-scope .page-hero--split .hero-figure img{width:100%;height:auto;display:block;filter:drop-shadow(0 30px 50px rgba(0,0,0,.4));border-radius:var(--radius-lg)}
@media (max-width:880px){
	.gpd-scope .page-hero--split .hero-grid{grid-template-columns:1fr;gap:2rem}
	.gpd-scope .page-hero--split .hero-figure{order:-1;max-width:460px}
}

/* =====================================================================
   Global — top bar + header nav
   ===================================================================== */
.gpd-scope .topbar{background:var(--ink);color:var(--tx-on-dark-soft);font-size:var(--step--1)}
.gpd-scope .topbar .container{display:flex;gap:1.4rem;align-items:center;justify-content:space-between;min-height:42px;flex-wrap:wrap}
.gpd-scope .topbar a{color:var(--tx-on-dark-soft);display:inline-flex;align-items:center;gap:.5rem}
.gpd-scope .topbar a:hover{color:#fff}
.gpd-scope .topbar .tb-left{display:flex;gap:1.4rem;flex-wrap:wrap}
.gpd-scope .topbar .tb-tag{font-family:var(--f-mono);letter-spacing:.04em;color:var(--amber)}
.gpd-scope .topbar svg{width:14px;height:14px;flex:none}
@media (max-width:560px){.gpd-scope .topbar .tb-tag{display:none}}

.gpd-scope .site-header{position:sticky;top:0;z-index:100;background:rgba(248,246,241,.9);backdrop-filter:saturate(140%) blur(10px);border-bottom:1px solid var(--line-soft);transition:box-shadow .25s ease,background .25s ease}
.gpd-scope .site-header.is-stuck{box-shadow:var(--shadow-sm);background:rgba(248,246,241,.97)}
.gpd-scope .nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:74px}
.gpd-scope .brand{display:flex;align-items:center;gap:.7rem;font-family:var(--f-display);font-weight:800;font-size:1.32rem;letter-spacing:-.02em;color:var(--ink)}
.gpd-scope .brand:hover{color:var(--ink)}
.gpd-scope .brand .mark{width:38px;height:38px;flex:none}
.gpd-scope .brand small{display:block;font-family:var(--f-mono);font-weight:500;font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;color:var(--petrol);margin-top:2px}
.gpd-scope .nav-list{display:flex;align-items:center;gap:.2rem;list-style:none}
.gpd-scope .nav-list > li > a,.gpd-scope .nav-toggle-sub{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--f-display);font-weight:500;font-size:.96rem;color:var(--tx);padding:.6rem .8rem;border-radius:var(--radius);background:none;border:0;cursor:pointer}
.gpd-scope .nav-list a:hover,.gpd-scope .nav-toggle-sub:hover{color:var(--petrol);background:rgba(12,85,102,.06)}
.gpd-scope .nav-list a[aria-current="page"]{color:var(--petrol)}
.gpd-scope .has-sub{position:relative}
.gpd-scope .has-sub > .nav-toggle-sub svg{width:12px;height:12px;transition:transform .2s ease}
.gpd-scope .has-sub[data-open="true"] > .nav-toggle-sub svg{transform:rotate(180deg)}
.gpd-scope .submenu{position:absolute;top:calc(100% + 8px);left:0;min-width:290px;background:var(--ink);border-radius:var(--radius-lg);padding:.6rem;box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s ease;list-style:none;border:1px solid rgba(255,255,255,.06)}
.gpd-scope .has-sub[data-open="true"] .submenu{opacity:1;visibility:visible;transform:translateY(0)}
.gpd-scope .submenu a{display:block;color:var(--tx-on-dark-soft);font-family:var(--f-body);font-weight:400;font-size:.92rem;padding:.6rem .8rem;border-radius:var(--radius);line-height:1.3}
.gpd-scope .submenu a:hover{background:rgba(255,255,255,.06);color:#fff}
.gpd-scope .submenu a small{display:block;color:rgba(234,241,243,.45);font-size:.74rem;margin-top:1px}
.gpd-scope .nav-cta{display:flex;align-items:center;gap:.6rem}
.gpd-scope .nav-burger{display:none;width:46px;height:46px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);cursor:pointer;align-items:center;justify-content:center;flex:none}
.gpd-scope .nav-burger span,.gpd-scope .nav-burger span::before,.gpd-scope .nav-burger span::after{content:"";display:block;width:20px;height:2px;background:var(--ink);transition:.25s ease;position:relative}
.gpd-scope .nav-burger span::before{position:absolute;top:-6px}
.gpd-scope .nav-burger span::after{position:absolute;top:6px}
.gpd-scope .gpd-nav.menu-open .nav-burger span{background:transparent}
.gpd-scope .gpd-nav.menu-open .nav-burger span::before{top:0;transform:rotate(45deg)}
.gpd-scope .gpd-nav.menu-open .nav-burger span::after{top:0;transform:rotate(-45deg)}
.gpd-scope .nav-overlay{display:none}
@media (min-width:1001px){
	.gpd-scope .has-sub:hover .submenu,.gpd-scope .has-sub:focus-within .submenu{opacity:1;visibility:visible;transform:translateY(0)}
	.gpd-scope .has-sub:hover > .nav-toggle-sub svg{transform:rotate(180deg)}
}
@media (max-width:1000px){
	.gpd-scope .nav-burger{display:flex}
	.gpd-scope .nav-cta .btn{display:none}
	.gpd-scope .nav-list{position:fixed;inset:0 0 0 auto;width:min(86vw,380px);background:var(--ink);flex-direction:column;align-items:stretch;gap:.1rem;padding:6rem 1.3rem 2rem;transform:translateX(100%);transition:transform .3s ease;overflow-y:auto;z-index:99}
	.gpd-scope .gpd-nav.menu-open .nav-list{transform:translateX(0)}
	.gpd-scope .gpd-nav.menu-open .nav-overlay{display:block;position:fixed;inset:0;background:rgba(8,12,14,.55);z-index:98}
	.gpd-scope .nav-list > li > a,.gpd-scope .nav-toggle-sub{color:var(--tx-on-dark);width:100%;justify-content:space-between;padding:.85rem .6rem;font-size:1.06rem;border-bottom:1px solid rgba(255,255,255,.06);border-radius:0}
	.gpd-scope .nav-list a:hover,.gpd-scope .nav-toggle-sub:hover{background:rgba(255,255,255,.05);color:#fff}
	.gpd-scope .has-sub{display:flex;flex-wrap:wrap;align-items:stretch}
	.gpd-scope .has-sub > a{flex:1 1 auto;width:auto}
	.gpd-scope .submenu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;background:transparent;padding:.2rem 0 .5rem .6rem;max-height:0;overflow:hidden;transition:max-height .3s ease;border:0}
	.gpd-scope .has-sub[data-open="true"] .submenu{max-height:600px}
	.gpd-scope .submenu a{padding:.55rem .6rem;font-size:.95rem}
}

/* =====================================================================
   Global — footer
   ===================================================================== */
.gpd-scope .site-footer{background:var(--ink);color:var(--tx-on-dark-soft);padding-block:clamp(3rem,5vw,4.5rem) 0}
.gpd-scope .footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:2rem}
.gpd-scope .footer-grid h4{font-family:var(--f-mono);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--amber);margin-bottom:1.1rem;font-weight:500}
.gpd-scope .footer-grid a{color:var(--tx-on-dark-soft)}
.gpd-scope .footer-grid a:hover{color:#fff}
.gpd-scope .f-brand .brand{color:#fff;margin-bottom:1rem}
.gpd-scope .f-brand .brand small{color:var(--amber)}
.gpd-scope .f-brand p{font-size:.9rem;max-width:34ch}
.gpd-scope .f-list{list-style:none;display:grid;gap:.55rem;font-size:.92rem}
.gpd-scope .f-meta{font-size:.86rem;display:grid;gap:.35rem}
.gpd-scope .f-meta b{color:var(--tx-on-dark);font-weight:600}
.gpd-scope .f-bottom{border-top:1px solid var(--line-light);margin-top:2.5rem;padding-block:1.4rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.82rem}
.gpd-scope .f-bottom a{text-decoration:underline;text-underline-offset:2px}
@media (max-width:900px){.gpd-scope .footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.gpd-scope .footer-grid{grid-template-columns:1fr}}

/* =====================================================================
   Full-bleed (edge-to-edge) backgrounds for the global header/footer.
   Negative viewport margins break the element out of Elementor's boxed
   column while the inner .container keeps content centred. No effect
   when the widget is already placed in a full-width section.
   ===================================================================== */
.gpd-scope .gpd-nav.is-fullwidth .topbar,
.gpd-scope .gpd-nav.is-fullwidth .site-header,
.gpd-scope .site-footer.is-fullwidth{
	width:100vw;
	max-width:100vw;
	position:relative;
	left:50%;
	right:50%;
	margin-left:-50vw;
	margin-right:-50vw;
}
/* keep the boxed row's own content aligned to the page container width */
.gpd-scope .gpd-nav.is-fullwidth .topbar > .container,
.gpd-scope .gpd-nav.is-fullwidth .site-header > .container,
.gpd-scope .site-footer.is-fullwidth > .container{max-width:var(--container);margin-inline:auto}
