/*
Theme Name: OCZKO
Version: 1.3.4
Description: Motyw salonu OCZKO w Toruniu. Godziny i kontakt w Wygląd → Dostosuj.
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: oczko
*/
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:130px}body{margin:0;color:#103f44;background:white;font:17px/1.65 Arial,sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}a:focus-visible{outline:3px solid #e49c36;outline-offset:5px}img{max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(40px,4.2vw,72px);line-height:1.09;letter-spacing:-2px;margin-bottom:24px}h2{font-size:clamp(32px,3.2vw,52px);line-height:1.2;font-weight:500;letter-spacing:-1px}h3{font-size:24px;line-height:1.3}em{font-style:normal;color:#008b90}.top{background:#104447;color:white;display:flex;justify-content:space-between;padding:6px 6%;font-size:14px}header{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:22px 6%;background:white;position:sticky;top:0;z-index:10;border-bottom:1px solid #e3eeee}.admin-bar header{top:32px}.brand{width:220px;flex-shrink:0}.brand img{width:220px;max-height:90px;object-fit:contain}nav{display:flex;gap:28px;font-size:16px}.button{display:inline-block;background:#008b90;color:white;border-radius:40px;padding:15px 27px;font-weight:700;white-space:normal;line-height:1.4}.button:hover{background:#08696e;text-decoration:none}.hero{display:grid;grid-template-columns:57% 43%;background:#e3f7f6}.hero-photo{width:100%;height:100%;min-height:560px;object-fit:cover}.hero-copy{padding:55px 9%}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;margin-bottom:24px}.lead{font-size:20px;color:#526b71;line-height:1.6}.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin:32px 0}.actions>a:not(.button),.text-link{border-bottom:1px solid}.note{margin-top:32px;color:#526b71;font-size:15px}.note strong{color:#103f44}.benefits{display:flex;justify-content:space-between;gap:20px;padding:22px 7%;background:#f0fafa}.benefits b{color:#008b90;margin-right:20px}.section{padding:75px 6%;max-width:1600px;margin:auto}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:35px 0}.cards article{padding:32px;background:#f3f9f9;border-top:2px solid #8dcfce}.cards p{color:#526b71;margin-bottom:0}.number{color:#008b90;font-size:12px;letter-spacing:2px;display:block;margin-bottom:30px}.about{display:grid;grid-template-columns:1fr 1fr;gap:70px;background:#e3f7f6}.contact{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;background:#f4f9f8}.contact iframe{width:100%;height:100%;min-height:450px;border-radius:16px}.hours{max-width:380px}.hours div{display:flex;justify-content:space-between;border-bottom:1px solid #dbe7e7;padding:5px 0}.hours dd{margin:0}footer{background:#104447;color:white;padding:30px 6%;display:flex;gap:30px;flex-wrap:wrap;justify-content:space-between;font-size:14px}.skip{position:absolute;left:-9999px}.skip:focus{left:20px;top:20px;z-index:99;background:white;padding:10px}@media(max-width:1100px){header{flex-wrap:wrap;gap:15px}nav{order:3;width:100%;justify-content:center}.hero{grid-template-columns:1fr 1fr}.hero-copy{padding:40px 7%}.benefits{font-size:14px}}@media(max-width:700px){.top{font-size:11px;gap:15px}.brand,.brand img{width:150px}header{padding:12px 5%}header .button{font-size:13px;padding:12px 16px}nav{gap:15px;font-size:12px;flex-wrap:wrap}.hero{display:flex;flex-direction:column}.hero-photo{height:310px;min-height:0}.hero-copy{padding:35px 6%}.benefits{flex-direction:column;gap:10px}.section{padding:45px 6%}.cards,.about,.contact{grid-template-columns:1fr;gap:20px}.contact iframe{height:350px;min-height:0}.admin-bar header{top:46px}h1{letter-spacing:-1px}.actions{gap:18px}.contact p{overflow-wrap:anywhere}}@media(max-width:600px){.admin-bar header{position:relative;top:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Centered brand and navigation, version 1.1.0. */
header{flex-direction:column;justify-content:center;gap:16px;padding-top:20px;padding-bottom:20px}
.brand,.brand img{width:286px}.brand img{max-height:117px;display:block}
.header-links{display:flex;align-items:center;justify-content:center;gap:36px;width:100%}
.header-links nav{width:auto;order:0;justify-content:center}
.icon{vertical-align:middle;flex-shrink:0;margin-right:8px;color:#008b90}footer .icon{color:inherit}
.salon-gallery{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.salon-gallery a{display:block;overflow:hidden;border-radius:12px}.salon-gallery img{display:block;width:100%;height:260px;object-fit:cover}
html{scroll-padding-top:220px}
@media(max-width:700px){.brand,.brand img{width:195px}.brand img{max-height:100px}.header-links{flex-direction:column;gap:12px}.header-links nav{width:100%;gap:16px}.salon-gallery{grid-template-columns:1fr 1fr}.salon-gallery img{height:190px}.about{gap:24px}html{scroll-padding-top:260px}}
@media(max-width:420px){.salon-gallery{grid-template-columns:1fr}.salon-gallery img{height:auto}}

.brands{border-top:1px solid #dbeaea}.brand-category{margin-top:40px}.brand-category h3{font-size:22px}.brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;padding:0;list-style:none}.brand-card{background:#fff;border:1px solid #dcebea;border-radius:14px;min-width:0;padding:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center}.brand-card .brand-logo{width:100%;height:100px;object-fit:contain}.brand-card span{font-size:15px;color:#526b71;overflow-wrap:anywhere}.header-links nav{flex-wrap:wrap}@media(max-width:1000px){.brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.header-links{gap:20px}}@media(max-width:700px){.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.brand-card{padding:18px}.brand-card .brand-logo{height:80px}}@media(max-width:350px){.brand-grid{grid-template-columns:1fr}}

.oczko-arrow { font-family: Arial, "Segoe UI Symbol", sans-serif; font-variant-emoji: text; color: inherit; }

.children {background:#f2faf9}.children .lead{max-width:78ch}.children .cards article{background:white}.children-logo{display:block;width:160px;height:44px;object-fit:contain;object-position:left center;margin-bottom:22px}.children .button{margin-top:12px}

.children-product-logo {display:block;width:190px;max-width:100%;height:auto;margin:0 0 20px;}

/* Shared rows align each heading and description even when a title wraps. */
.children .cards {
    grid-auto-rows: auto;
    row-gap: 18px;
}
.children .cards article {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
    min-width: 0;
}
.children .cards article h3,
.children .cards article p {
    margin: 0;
}
.children-logos {
    display: flex;
    align-items: center;
    gap: 10px;
    height: 46px;
    container-type: inline-size;
}
.children-logos img {
    display: block;
    width: auto;
    max-width: 100%;
    height: 36px;
    margin: 0;
    object-fit: contain;
}
.children-logos-pair {
    display: grid;
    grid-template-columns: minmax(0, 44fr) minmax(0, 56fr);
    width: 100%;
    height: auto;
    min-height: 46px;
    align-self: center;
    gap: clamp(8px, 1vw, 14px);
}
.children-logos-pair img {
    width: 100%;
    height: auto;
    min-width: 0;
    align-self: center;
}
@media (max-width: 700px) {
    .children .cards article {grid-row: auto; grid-template-rows: auto auto auto; gap: 18px;}
}

.mobile-toggle { display: none; }
@media (max-width: 700px) {
    .header-links.nav-ready { position: relative; flex-direction: row; gap: 12px; align-items: center; }
    .nav-ready .mobile-toggle {
        display: inline-flex; align-items: center; justify-content: center; gap: 8px;
        min-height: 44px; padding: 0 16px; border: 1px solid #90bfbe; border-radius: 40px;
        color: #103f44; background: white; font: 700 14px Arial, sans-serif; cursor: pointer;
    }
    .nav-ready > .button { display: inline-flex; align-items: center; gap: 5px; min-height: 44px; }
    .nav-ready nav { display: none; }
    .nav-ready .mobile-toggle[aria-expanded="true"] + nav {
        display: flex; position: absolute; top: calc(100% + 8px); left: 0; width: 100%;
        flex-direction: column; align-items: stretch; gap: 0; padding: 6px;
        background: white; border: 1px solid #dcebea; border-radius: 14px;
        box-shadow: 0 8px 20px #103f441f; max-height: 50vh; overflow-y: auto;
    }
    .nav-ready nav a { padding: 12px 16px; text-align: center; font-size: 15px; }
    .mobile-toggle:focus-visible { outline: 3px solid #e49c36; outline-offset: 3px; }
}
