/*
Theme Name: 2xS Studio
Version: 1.1.1
Author: 2xSkworcow i Partnerzy
*/
:root{--navy:#0b2035;--tan:#e4b58f;--paper:#f4f1eb;--blue:#1266e8;--ink:#102334}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 'Segoe UI',Arial,sans-serif}a{color:inherit}h1,h2,h3{line-height:1.13;letter-spacing:-.04em;margin:0 0 20px}h1{font-size:clamp(42px,5.5vw,76px)}h2{font-size:clamp(30px,4vw,48px)}h3{font-size:26px}p{margin:0 0 22px}.wrap{width:min(1200px,calc(100% - 48px));margin:auto}header{background:var(--navy);color:white}.bar{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:23px 0}.brand{text-decoration:none;font-size:32px;font-weight:800;letter-spacing:-2px}.brand small{display:block;letter-spacing:2px;font-size:10px;font-weight:600}nav{display:flex;gap:24px;flex-wrap:wrap}nav a{text-decoration:none;font-size:14px;font-weight:650}.hero{background:var(--navy);color:white;padding:76px 0 90px}.hero-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;align-items:center}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:2.5px;font-weight:750;color:#9a5426;margin-bottom:22px}.hero .eyebrow{color:var(--tan)}.hero p{color:#cfdae5;max-width:650px;font-size:19px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;padding:15px 25px;border-radius:99px;background:var(--blue);color:#fff;text-decoration:none;font-weight:700}.button.light{background:white;color:var(--ink)}.hero-card{background:var(--tan);color:var(--ink);border-radius:30px;padding:34px}.hero-card p{color:var(--ink);font-size:17px}.service-line{padding:17px 0;border-top:1px solid #10233430;display:flex;justify-content:space-between;font-weight:650}.section{padding:65px 0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:var(--tan);border-radius:28px;padding:30px;display:flex;flex-direction:column}.card p{flex:1}.card a{font-weight:700}.card .num{font-size:13px;letter-spacing:2px;margin-bottom:25px}.white{background:#fff}.panel{background:var(--navy);color:#fff;border-radius:30px;padding:42px}.panel p{color:#d1dce7}.split{display:grid;grid-template-columns:1fr 1fr;gap:38px}.steps{padding-left:23px}.steps li{padding:8px 0}.contact{background:var(--tan);border-radius:30px;padding:42px}.contact p{max-width:700px}footer{background:#061421;color:#cfdae5;padding:40px 0;margin-top:50px;font-size:14px}footer a{color:white}.note{font-size:14px;color:#536779;margin-top:22px}a:focus-visible{outline:3px solid #d98531;outline-offset:5px}html{scroll-behavior:smooth;scroll-padding-top:25px}.woocommerce{padding:40px 0}.woocommerce a.button,.woocommerce button.button{background:var(--blue);color:white;border-radius:28px}.skip{position:absolute;top:-80px;background:#fff;padding:10px}.skip:focus{top:0}@media(max-width:800px){.hero-grid,.split{grid-template-columns:1fr;gap:28px}.grid{grid-template-columns:1fr}.hero{padding:40px 0}.bar{align-items:flex-start;flex-direction:column;gap:18px}nav{gap:13px}.section{padding:36px 0}.wrap{width:calc(100% - 32px)}.panel,.contact{padding:27px}.hero-card{padding:28px}.actions .button{width:100%}}
.brand-dot{color:var(--tan)}.hero-card .eyebrow{color:var(--ink);letter-spacing:1.5px}.note{color:#344759}.hero-grid>*{min-width:0}nav{align-items:center}nav a{padding:10px 0;min-height:44px}.nav-contact{background:var(--tan);color:var(--ink);padding:10px 20px;border-radius:99px}.button{min-height:48px;transition:background-color .16s ease,transform .16s ease}.button:hover{background:#0d51bb;transform:translateY(-2px)}.button.light:hover{background:#e8edf1}.text-link{font-weight:700;text-underline-offset:5px}.card,.panel,.contact{min-width:0;overflow-wrap:anywhere}.prose{max-width:960px}.prose h2{font-size:clamp(26px,3vw,36px);margin-top:42px}.prose .contact h2{margin-top:0}.lead{font-size:21px;max-width:780px}.prose li{margin:10px 0}.faq{max-width:900px}.faq details{padding:22px 0;border-top:1px solid #c8cfd2}.faq summary{cursor:pointer;min-height:44px;font-size:20px;font-weight:700}.faq p{margin:14px 0 0}.skip{z-index:1000;color:var(--ink)}summary:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #1266e8;outline-offset:4px}.page-numbers{display:inline-block;padding:10px 18px}.nav-links{margin-top:24px}.grid h2{font-size:28px}footer .split a{display:inline-block;padding:5px 0}@media(min-width:801px) and (max-width:1050px){.hero-grid{gap:30px;grid-template-columns:1.25fr 1fr}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bar{align-items:flex-start}nav{gap:14px}.brand{flex-shrink:0}}@media(max-width:540px){h1{font-size:clamp(34px,10vw,48px)}.hero p{font-size:18px}.hero-card{padding:24px}.card{padding:24px}.bar{gap:16px}.nav-contact{padding:10px 16px}.contact,.panel{padding:24px}.lead{font-size:19px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.button:hover{transform:none}}
.eyebrow{color:#703a18}a:focus-visible,summary:focus-visible,button:focus-visible,input:focus-visible{outline-color:var(--ink)}header a:focus-visible,.hero a:focus-visible,.panel a:focus-visible,footer a:focus-visible{outline-color:var(--tan)}

/* Complementary services: readable descriptions and accessible touch targets. */
.related-services{display:block;border-top:1px solid currentColor;margin-top:28px;padding-top:22px;font-size:14px;letter-spacing:normal;text-transform:none}
.related-services .related-services-title{font-size:16px;font-weight:700;margin:0 0 12px;color:inherit}
.related-services ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 32px}
.related-services li{margin:0;padding:0;min-width:0}
.related-services li a{display:inline-flex;align-items:center;min-height:44px;padding:8px 0;font-size:15px;font-weight:600;text-decoration:underline;text-underline-offset:4px;white-space:normal}
.related-services li span{display:block;line-height:1.6;color:inherit;overflow-wrap:anywhere}
@media(max-width:600px){.related-services ul{grid-template-columns:1fr;gap:12px}.related-services li a{max-width:100%}}

/* Native keyboard-accessible menu. Desktop remains expanded via CSS. */
.mobile-navigation > summary { cursor:pointer; padding:12px 16px; border:1px solid currentColor; border-radius:10px; font-weight:700; }
@media (min-width: 901px) {
 .mobile-navigation > summary { display:none; }
 .mobile-navigation:not([open]) > nav { display:flex; }
 .mobile-navigation::details-content { content-visibility:visible; }
}
@media (max-width: 900px) {
 header .mobile-navigation { margin-left:auto; }
 header .mobile-navigation[open] { flex-basis:100%; }
 header .mobile-navigation:not([open]) > nav { display:none; }
 header .mobile-navigation > nav { display:flex; flex-direction:column; align-items:stretch; gap:4px; padding:12px 0; }
 header .mobile-navigation > nav a { display:block; padding:12px 16px; }
}
