/*
Theme Name: Tęczowy Ogród – Premium FSE
Theme URI: https://teczowyogrod.eu/
Author: OpenAI
Description: W pełni edytowalny motyw blokowy WordPress (Full Site Editing) dla strony sprzedażowej Tęczowego Ogrodu. Edytowalne: strona, nagłówek, menu, stopka, kolory, typografia, sekcje, zdjęcia i CTA.
Version: 2.7.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: teczowy-ogrod-fse
*/

:root{
  --to-ink:#143f43;
  --to-green:#2f7350;
  --to-green-dark:#1f5e40;
  --to-mint:#eef7f1;
  --to-coral:#ee5968;
  --to-coral-dark:#d94455;
  --to-pink:#fff1f2;
  --to-blue:#edf7ff;
  --to-cream:#fff9ee;
  --to-line:#e2ebe6;
  --to-muted:#617173;
  --to-shadow:0 18px 50px rgba(20,63,67,.09);
  --to-radius:24px;
}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{overflow-x:hidden}
.wp-site-blocks{overflow:hidden}
a{text-underline-offset:.18em}
img{max-width:100%;height:auto}

/* Header / Navigation */
.to-site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(20,63,67,.08)}
.to-header-inner{min-height:76px}
.to-site-title a{text-decoration:none!important}
.to-header-cta .wp-block-button__link{white-space:nowrap}
.wp-block-navigation .wp-block-navigation-item__content{font-weight:650;text-decoration:none}
.wp-block-navigation__responsive-container.is-menu-open{padding:26px;background:#fff}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{gap:20px}

/* Shared */
.to-section{padding-top:clamp(54px,7vw,86px);padding-bottom:clamp(54px,7vw,86px)}
.to-section-tight{padding-top:32px;padding-bottom:32px}
.to-section h1,.to-section h2,.to-section h3,.to-hero h1,.to-hero h2{margin-top:0}
.to-eyebrow{font-size:.82rem!important;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--to-coral);margin-bottom:.55rem}
.to-lead{font-size:clamp(1.08rem,1.5vw,1.22rem);color:var(--to-muted);line-height:1.65}
.to-muted{color:var(--to-muted)}
.to-center-max{max-width:760px!important;margin-left:auto!important;margin-right:auto!important}
.to-card{height:100%;border:1px solid var(--to-line);border-radius:var(--to-radius);background:#fff;box-shadow:0 8px 28px rgba(20,63,67,.045);padding:24px}
.to-soft{background:#f8fbf9}
.to-anchor{scroll-margin-top:92px}

/* Buttons */
.wp-block-button__link{transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}
.wp-block-button__link:hover{transform:translateY(-1px)}
.to-primary .wp-block-button__link{background:var(--to-coral)!important;color:#fff!important;box-shadow:0 10px 26px rgba(238,89,104,.20)!important}
.to-primary .wp-block-button__link:hover{background:var(--to-coral-dark)!important}
.to-outline .wp-block-button__link{background:transparent!important;color:var(--to-ink)!important;border:1.5px solid var(--to-ink)!important}

/* Hero */
.to-hero{background:linear-gradient(90deg,#f5faf6 0%,#fff 48%,#f4f9f5 100%);padding-top:clamp(34px,5vw,62px);padding-bottom:26px}
.to-hero-grid{gap:clamp(30px,5vw,60px)!important;align-items:center!important}
.to-hero-copy{padding-top:16px;padding-bottom:16px}
.to-hero-image img{width:100%;height:clamp(390px,48vw,590px);object-fit:cover;border-radius:32px;box-shadow:var(--to-shadow)}
.to-hero h1{font-size:clamp(2.35rem,5vw,4.9rem);line-height:1.02;letter-spacing:-.04em}
.to-hero-note{font-size:.9rem;color:var(--to-muted);margin-top:14px}

/* Stats */
.to-stats{gap:14px!important}
.to-stat{border:1px solid rgba(20,63,67,.06);border-radius:20px;padding:20px 16px;text-align:center;height:100%}
.to-stat:nth-child(1){background:var(--to-pink)}
.to-stat:nth-child(2){background:var(--to-mint)}
.to-stat:nth-child(3){background:var(--to-blue)}
.to-stat:nth-child(4){background:var(--to-cream)}
.to-stat-number{font-size:clamp(1.55rem,2.5vw,2rem)!important;font-weight:900;line-height:1.1;margin:0 0 5px!important}
.to-stat p:last-child{margin-bottom:0}

/* Media / feature */
.to-media{gap:clamp(28px,5vw,56px)!important;align-items:center!important}
.to-media figure{margin:0}
.to-media img{width:100%;height:clamp(280px,36vw,430px);object-fit:cover;border-radius:28px}

/* Benefit cards */
.to-benefits{gap:16px!important}
.to-benefit{border:1px solid var(--to-line);border-radius:20px;padding:24px;background:#fff;height:100%}
.to-benefit h3{font-size:1.15rem;margin-bottom:8px}
.to-benefit p{font-size:.96rem;color:var(--to-muted);margin-bottom:0}

/* Reviews */
.to-reviews{gap:16px!important}
.to-review{height:100%;border:1px solid var(--to-line);border-radius:20px;padding:24px;background:#fff}
.to-stars{color:#f3a400;font-size:1.18rem;letter-spacing:.08em;margin-top:0}
.to-review-source{background:var(--to-mint)}

/* Programs */
.to-programs{gap:18px!important}
.to-program{height:100%;border:1px solid var(--to-line);border-radius:22px;overflow:hidden;background:#fff}
.to-program figure{margin:0}
.to-program img{width:100%;height:220px;object-fit:cover}
.to-program-copy{padding:22px}

/* Garden */
.to-garden{background:linear-gradient(90deg,#edf7f0 0%,#fff 65%)}
.to-garden img{width:100%;height:clamp(330px,40vw,500px);object-fit:cover;border-radius:30px}

/* Steps */
.to-steps{gap:16px!important}
.to-step{height:100%;border:1px solid var(--to-line);border-radius:20px;background:#fff;padding:24px}
.to-step-number{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--to-green);color:#fff;font-weight:900;margin-bottom:14px}

/* Price */
.to-prices{gap:16px!important}
.to-price{height:100%;border-radius:22px;padding:26px;border:1px solid var(--to-line)}
.to-price:nth-child(1){background:var(--to-pink)}
.to-price:nth-child(2){background:var(--to-blue)}
.to-price:nth-child(3){background:var(--to-cream)}
.to-price-number{font-size:2.15rem!important;font-weight:900;line-height:1;margin:8px 0!important}

/* FAQ */
.to-faq .wp-block-details{border:1px solid var(--to-line);border-radius:14px;padding:16px 18px;background:#fff;margin:0 0 10px}
.to-faq summary{font-weight:800;cursor:pointer}

/* CTA */
.to-final{background:linear-gradient(90deg,#edf7f2,#fbfffc);border-top:1px solid var(--to-line);border-bottom:1px solid var(--to-line)}
.to-final-grid{align-items:center!important;gap:34px!important}

/* Contact */
.to-contact-grid{align-items:stretch!important;gap:24px!important}
.to-contact-card{height:100%;padding:28px;border-radius:24px;background:#fff;border:1px solid var(--to-line)}
.to-map{overflow:hidden;border-radius:24px;min-height:330px;background:#eef4f1}
.to-map iframe{width:100%;height:100%;min-height:330px;border:0;display:block}

/* Footer */
.to-site-footer{border-top:1px solid var(--to-line);padding-top:34px;padding-bottom:34px;color:var(--to-muted);font-size:.92rem}
.to-site-footer a{color:inherit}

/* Mobile sticky sales bar */
.to-mobile-bar{display:none!important}

/* Editor friendliness: visible section bounds only while editing */
.editor-styles-wrapper .to-section{outline:1px dashed rgba(47,115,80,.12);outline-offset:-1px}
.editor-styles-wrapper .to-anchor{scroll-margin-top:0}

@media (max-width: 1020px){
  .to-header-cta{display:none!important}
  .to-benefits{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))}
  .to-benefits>.wp-block-column{width:auto!important;flex-basis:auto!important}
}

@media (max-width: 781px){
  html{scroll-padding-top:72px}
  body{padding-bottom:72px}
  .to-section{padding-top:48px;padding-bottom:48px}
  .to-section-tight{padding-top:24px;padding-bottom:24px}
  .to-hero{padding-top:24px}
  .to-hero-grid{gap:24px!important}
  .to-hero h1{font-size:clamp(2.25rem,10vw,3.4rem)}
  .to-hero-image img{height:380px;border-radius:24px}
  .to-stats{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))}
  .to-stats>.wp-block-column{width:auto!important;flex-basis:auto!important}
  .to-benefits{grid-template-columns:1fr}
  .to-media img,.to-garden img{height:310px}
  .to-program img{height:230px}
  .to-mobile-bar{display:flex!important;position:fixed!important;left:0;right:0;bottom:0;z-index:120;background:#fff;border-top:1px solid var(--to-line);padding:8px 12px;gap:8px;box-shadow:0 -8px 24px rgba(0,0,0,.08)}
  .to-mobile-bar>.wp-block-button{flex:1;margin:0!important}
  .to-mobile-bar .wp-block-button__link{width:100%;padding:12px 10px!important;text-align:center;font-size:.95rem}
  .to-mobile-phone .wp-block-button__link{background:var(--to-ink)!important;color:#fff!important}
  .to-mobile-visit .wp-block-button__link{background:var(--to-coral)!important;color:#fff!important}
}

@media (max-width: 480px){
  .to-stats{grid-template-columns:1fr 1fr}
  .to-stat{padding:17px 10px}
  .to-stat-number{font-size:1.45rem!important}
  .to-hero-image img{height:320px}
  .to-card,.to-benefit,.to-review,.to-step,.to-price,.to-contact-card{padding:20px}
}


/* Floating contact buttons */
.to-floating-contact{position:fixed;left:22px;bottom:120px;z-index:130;display:flex;flex-direction:column;gap:16px}
.to-float-btn{width:74px;height:74px;border-radius:50%;display:grid;place-items:center;text-decoration:none!important;box-shadow:0 10px 28px rgba(0,0,0,.18);transition:transform .18s ease, box-shadow .18s ease}
.to-float-btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,0,0,.2)}
.to-float-phone{background:#ffcc00;color:#fff}
.to-float-facebook{background:#1877f2;color:#fff}
.to-float-icon{width:34px;height:34px;display:block}
.to-float-icon svg{width:100%;height:100%;display:block}
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}

@media (max-width: 781px){
  .to-floating-contact{left:auto;right:14px;bottom:88px;gap:12px}
  .to-float-btn{width:58px;height:58px}
  .to-float-icon{width:28px;height:28px}
}

/* Real media added by user */
.to-video-wrap{overflow:hidden;border-radius:28px;box-shadow:var(--to-shadow);background:#111;aspect-ratio:16/10;display:grid;place-items:center}
.to-video-wrap video{width:100%;height:100%;object-fit:cover;display:block;background:#111}
.to-real-gallery{gap:16px!important;margin-top:22px!important}
.to-real-gallery figure{margin:0;height:100%}
.to-real-gallery img{width:100%;height:250px;object-fit:cover;border-radius:20px;box-shadow:0 8px 24px rgba(20,63,67,.06)}
.to-trust{background:#fffaf4}
.to-trust-grid{gap:18px!important;margin-top:30px!important}
.to-trust-card{background:#fff;border:1px solid var(--to-line);border-radius:22px;padding:18px;height:100%;box-shadow:0 8px 28px rgba(20,63,67,.045)}
.to-trust-card figure{margin:0 0 18px}
.to-trust-card img{width:100%;height:270px;object-fit:cover;border-radius:16px}
.to-trust-card h3{margin-top:0;margin-bottom:8px}
.to-trust-card p{color:var(--to-muted);margin-bottom:0}
@media (max-width:781px){
  .to-video-wrap{aspect-ratio:9/14;max-height:620px}
  .to-real-gallery img{height:220px}
  .to-trust-card img{height:260px}
}

/* Sections added: zajęcia + mapa */
.to-poster img{width:100%;border-radius:28px;box-shadow:0 16px 40px rgba(20,63,67,.08);border:1px solid var(--to-line)}
.to-map-grid{align-items:stretch!important;gap:24px!important;margin-top:28px!important}
.to-map-card{height:100%;background:#fff;border:1px solid var(--to-line);border-radius:24px;padding:14px;box-shadow:0 8px 28px rgba(20,63,67,.045)}
.to-map-card figure{margin:0;height:100%}
.to-map-card img{width:100%;height:100%;min-height:330px;object-fit:contain;border-radius:18px;background:#fff}
@media (max-width:781px){
  .to-map-card{padding:10px}
  .to-map-card img{min-height:auto}
}

/* Video gallery */
.to-video-section{background:#fff}
.to-video-grid{gap:18px!important;margin-top:30px!important;align-items:stretch!important}
.to-video-card{background:#fff;border:1px solid var(--to-line);border-radius:24px;padding:14px 14px 20px;box-shadow:0 10px 32px rgba(20,63,67,.055);height:100%}
.to-video-card h3{margin:16px 6px 6px;font-size:1.18rem}
.to-video-card p{margin:0 6px;color:var(--to-muted)}
.to-video-tile{overflow:hidden;border-radius:18px;background:#111;aspect-ratio:9/16}
.to-video-tile video{width:100%;height:100%;object-fit:cover;display:block;background:#111}
@media (max-width:781px){
  .to-video-grid{display:block!important}
  .to-video-card{margin-bottom:18px}
  .to-video-tile{max-height:620px}
}

/* Training gallery */
.to-training-gallery{gap:18px!important;margin-top:26px!important}
.to-training-photo{background:#fff;border:1px solid var(--to-line);border-radius:22px;padding:14px;box-shadow:0 8px 28px rgba(20,63,67,.045)}
.to-training-photo figure{margin:0 0 12px}
.to-training-photo img{width:100%;height:300px;object-fit:cover;border-radius:16px;display:block}
.to-training-photo p{margin:0 4px 4px;text-align:center;color:var(--to-ink)}
@media (max-width:781px){.to-training-photo img{height:320px}}


/* Team section - original photo preserved */
.to-team{background:linear-gradient(180deg,#fff 0%,#fbf8f2 100%)}
.to-team-feature{align-items:center!important;gap:46px!important}
.to-team-photo{margin:0}
.to-team-photo img{width:100%;height:auto;max-height:620px;object-fit:contain;object-position:center;border-radius:28px;box-shadow:var(--to-shadow);background:#fff}
.to-team-role{font-size:1.08rem;color:var(--to-green-dark)}
.to-team-quote{margin-top:28px;padding:18px 22px;border-left:4px solid #c9a24b;background:#fff;border-radius:0 18px 18px 0;font-family:Georgia,"Times New Roman",serif;font-size:1.15rem}
.to-training-photo img{object-position:center top}
@media (max-width:781px){.to-team-feature{gap:24px!important}.to-team-photo img{max-height:none}.to-team-quote{font-size:1.04rem}}
