/*
Theme Name: Santa Run Woerden – Divi Child
Theme URI: https://santarunwoerden.nl/
Description: Feestelijk, responsive Divi 4-childthema voor Santa Run Woerden 2026.
Author: Santa Run Woerden
Version: 1.0.0
Template: Divi
Text Domain: srw-divi
Requires at least: 6.5
Requires PHP: 7.4
*/
:root{--srw-navy:#072550;--srw-deep:#061c3b;--srw-blue:#204a96;--srw-red:#d7261b;--srw-gold:#ffb80e;--srw-ice:#ecf9ff;--srw-white:#fff;--srw-text:#0c305a}
html{scroll-behavior:smooth}
body{background:var(--srw-deep)}
#main-header,#main-header.et-fixed-header{background:rgba(5,31,68,.98)!important;box-shadow:0 8px 30px rgba(0,12,29,.20)!important}
#main-header .container{max-width:1210px;width:92%}
#logo{max-height:78%!important}
#top-menu a,.et-fixed-header #top-menu a{color:#fff!important;font-weight:800;font-size:13px!important;text-transform:none}
#top-menu a:hover,#top-menu .current-menu-item>a{color:#ffca4a!important}
#top-menu li:last-child>a{color:#fff!important;background:var(--srw-red);border-radius:999px;padding:12px 17px!important;margin-top:-11px;box-shadow:0 5px 0 rgba(0,0,0,.13)}
#top-menu li:last-child>a:hover{color:#fff!important;background:#f13b29}
#et-top-navigation .mobile_menu_bar:before{color:#fff}
#main-header .et_mobile_menu{border-top:3px solid var(--srw-gold);background:var(--srw-navy)}
#main-header .et_mobile_menu a{color:#fff!important}
#main-footer{background:linear-gradient(180deg,#0b3266,#041a35)!important}
#footer-bottom{background:transparent!important;padding:26px 0!important}
#footer-info,#footer-info a{color:#dbeeff!important;font-size:13px}
.srw-section{padding:0!important;overflow:hidden;position:relative}
.srw-section .et_pb_row.srw-wide-row{width:min(1160px,92%)!important;max-width:1160px!important;padding:0!important}
.srw-section .et_pb_row.srw-wide-row .et_pb_column{margin:0!important;width:100%!important}
.srw-section .et_pb_row.srw-wide-row .et_pb_module{margin-bottom:0!important}
.srw-section .et_pb_row.srw-wide-row .et_pb_text_inner{display:block}
.srw{font-family:'Trebuchet MS',Arial,sans-serif;font-size:17px;color:var(--srw-text);line-height:1.65}
.srw *{box-sizing:border-box}
.srw h1,.srw h2,.srw h3,.srw h4{font-family:Impact,'Arial Black',system-ui,sans-serif;font-stretch:condensed;font-weight:900;line-height:1.12;letter-spacing:.015em;padding:0;color:inherit}
.srw h1{font-size:clamp(3.7rem,8vw,7.7rem)}
.srw h2{font-size:clamp(2.1rem,4.7vw,4.1rem)}
.srw h3{font-size:clamp(1.3rem,2.3vw,1.9rem)}
.srw p{font-size:inherit;line-height:1.65;color:inherit;padding:0 0 1em}
.srw p:last-child{padding-bottom:0}
.srw a{text-decoration:none}
.srw-eyebrow{display:inline-block;text-transform:uppercase;font-size:14px;font-weight:900;color:var(--srw-red);letter-spacing:.08em;margin-bottom:13px}
.srw-btn{display:inline-flex;align-items:center;justify-content:center;gap:.7em;border-radius:999px!important;background:var(--srw-red);color:white!important;min-height:54px;padding:16px 29px;font-weight:900;text-transform:uppercase;text-align:center;line-height:1.18;box-shadow:0 6px 0 rgba(80,4,12,.26),0 12px 25px rgba(13,35,62,.12);transition:transform .2s,background-color .2s}
.srw-btn:hover,.srw-btn:focus-visible{transform:translateY(-3px);background:#f0412c;color:white!important}
.srw-btn--light{background:#fff;color:var(--srw-deep)!important}
.srw-btn--light:hover{background:var(--srw-gold);color:var(--srw-deep)!important}
.srw-section--hero{background:radial-gradient(circle at 80% 20%,rgba(80,142,205,.33),transparent 36%),linear-gradient(120deg,#03224a,#0d4382 68%,#144b91)}
.srw-section--hero:before,.srw-section--enroll:before,.srw-section--details:before{content:"";pointer-events:none;position:absolute;inset:0;opacity:.42;background-image:radial-gradient(circle,#fff 1px,transparent 2px),radial-gradient(circle,#fff 1.4px,transparent 2.5px);background-size:93px 114px,171px 198px;background-position:11px 42px,39px 11px}
.srw-hero{color:white;position:relative;padding:95px 0 95px}
.srw-hero__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(20px,4vw,70px);align-items:center;min-height:540px}
.srw-hero__left{position:relative;z-index:2}
.srw-hero__logo{width:min(360px,85%);height:auto;display:block;filter:drop-shadow(0 11px 11px rgba(0,15,39,.16));margin-bottom:4px}
.srw-hero__city{display:inline-block;background:var(--srw-gold);color:#fff;font-family:Impact,'Arial Black',sans-serif;font-weight:900;font-size:clamp(25px,3vw,34px);letter-spacing:.035em;padding:3px 14px;line-height:1.25;margin:0 0 13px 15px;transform:rotate(-1deg)}
.srw-hero__date{font-size:clamp(21px,3vw,30px)!important;font-weight:900!important;line-height:1.2!important;text-transform:uppercase!important;letter-spacing:.01em;margin:5px 0 18px;color:white}
.srw-hero__text{font-size:clamp(17px,2vw,22px)!important;max-width:540px;line-height:1.48!important;margin:0 0 20px}
.srw-hero__small{margin-top:17px!important;font-size:14px!important;color:#eff5ff!important}
.srw-hero__media{position:relative;align-self:stretch;display:flex;align-items:center;justify-content:center;min-height:500px}
.srw-hero__photo{width:100%;height:530px!important;object-fit:cover;border:9px solid rgba(255,255,255,.93);border-radius:28px;box-shadow:0 24px 65px #001730;transform:rotate(2deg);filter:saturate(1.1)}
.srw-hero__badge{position:absolute;right:-10px;top:19px;background:var(--srw-gold);color:var(--srw-deep);width:135px;height:135px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;transform:rotate(10deg);font-size:18px;font-weight:900;line-height:1.2;box-shadow:0 12px 25px rgba(0,8,23,.28)}
.srw-hero__mascot{position:absolute;bottom:-40px;left:-120px;width:220px;filter:drop-shadow(0 12px 5px #001f4c)}
.srw-snow-edge{height:65px;background: url('assets/images/sneeuw-onder.png') center bottom/auto 65px repeat-x;position:absolute;bottom:-4px;left:0;right:0;z-index:3;pointer-events:none}
.srw-section--facts{background:linear-gradient(180deg,#e9f8ff,#f5fcff);padding:52px 0 50px!important}
.srw-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.srw-fact{background:#fff;border-radius:18px;box-shadow:0 12px 25px rgba(17,65,110,.06);padding:27px 16px;text-align:center;min-height:190px}
.srw-fact__icon{font-size:31px;color:var(--srw-red);font-weight:900;line-height:1.2;margin-bottom:12px}
.srw-fact strong{font-weight:1000;display:block;font-size:17px;line-height:1.3;color:var(--srw-navy);text-transform:uppercase;margin-bottom:8px}
.srw-fact span{font-size:14px;line-height:1.5;display:block}
.srw-section--about{background:linear-gradient(145deg,#fff,#f2faff);padding:85px 0!important}
.srw-about{display:grid;grid-template-columns:1fr .95fr;gap:7%;align-items:center}
.srw-about p{max-width:620px}
.srw-about h2{max-width:650px;color:var(--srw-navy);margin:0 0 20px}
.srw-about__image-frame{padding:12px;background:#fff;border:1px solid #dce7f5;border-radius:10px;box-shadow:0 20px 50px rgba(7,30,62,.16);transform:rotate(2deg);position:relative}
.srw-about__image-frame:before{content:"";background:url('assets/images/sneeuw-boven.png') top left/auto 45px repeat-x;height:45px;position:absolute;left:0;right:0;top:-4px;z-index:2;pointer-events:none}
.srw-about__image-frame img{width:100%;aspect-ratio:1.15;object-fit:cover;display:block;border-radius:5px}
.srw-section--highlights{padding:65px 0 70px!important;background:var(--srw-ice)}
.srw-highlights{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.srw-highlight{min-height:290px;padding:40px 39px;border-radius:22px;position:relative;box-shadow:0 14px 28px rgba(22,66,110,.12);overflow:hidden}
.srw-highlight--lottery{background:linear-gradient(135deg,#ffd15b,#ffae12);color:#082c59}
.srw-highlight--costume{background:linear-gradient(135deg,#ce1b19,#ec3923);color:white}
.srw-highlight__tag{display:inline-block;border-radius:999px;background:rgba(255,255,255,.93);padding:7px 13px;font-size:13px;font-weight:1000;color:var(--srw-navy);margin-bottom:15px}
.srw-highlight h3{font-size:clamp(24px,3.2vw,38px);margin:0 0 13px;max-width:470px}
.srw-highlight p{font-size:16px;max-width:470px;line-height:1.5}
.srw-highlight__emblem{position:absolute;right:15px;bottom:-70px;font-size:170px;opacity:.10;line-height:1;transform:rotate(-12deg);pointer-events:none}
.srw-section--enroll{background:linear-gradient(120deg,#062956,#123d79);padding:75px 0 90px!important}
.srw-enroll{position:relative;display:grid;grid-template-columns:220px 1fr;gap:36px;align-items:center;color:white}
.srw-enroll__santa{width:250px;max-width:100%;filter:drop-shadow(0 11px 20px rgba(1,12,32,.3))}
.srw-enroll .srw-eyebrow{color:var(--srw-gold)}
.srw-enroll h2{color:white;margin:0 0 24px}
.srw-prices{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:700px;margin-bottom:25px}
.srw-price{border-radius:15px;background:#fff;color:var(--srw-navy);padding:24px}
.srw-price strong{font-weight:900;font-size:17px;display:block}
.srw-price b{display:block;color:var(--srw-red);font-size:31px;line-height:1.2;font-family:Impact,'Arial Black',sans-serif;margin:6px 0}
.srw-price span{font-size:13px}
.srw-price--small{background:#fffaf1}
.srw-section--details{background:linear-gradient(135deg,#0d386f,#082955);padding:85px 0!important}
.srw-details{display:grid;grid-template-columns:1.1fr .85fr;gap:9%;align-items:start;color:white}
.srw-details h2{color:#fff;font-size:clamp(34px,4vw,50px);margin:0 0 28px}
.srw-detail{display:grid;grid-template-columns:45px 1fr;gap:13px;align-items:start;margin-bottom:25px}
.srw-detail__dot{display:grid;place-items:center;background:var(--srw-red);border-radius:50%;width:45px;height:45px;font-size:22px;font-weight:900}
.srw-detail strong{display:block;font-weight:900;font-size:18px}
.srw-detail p{font-size:15px!important;line-height:1.45;margin:0!important}
.srw-question{background:#fff;color:var(--srw-navy);padding:40px;border-radius:24px;box-shadow:0 20px 45px rgba(1,15,36,.20);transform:rotate(1.5deg)}
.srw-question h3{color:var(--srw-navy);margin:0 0 14px}
.srw-question p{margin-bottom:24px}
.srw-section--sponsors{background:linear-gradient(#fff,#eaf7ff);padding:70px 0 90px!important}
.srw-sponsors-title{font-size:clamp(29px,3.7vw,43px)!important;color:var(--srw-red)!important;margin-bottom:25px!important}
.srw-section--sponsors .srw{color:var(--srw-navy)}
.srw-section--sponsors .srw-sponsor-carousel{margin-top:20px}
.srw-section--inner{background:linear-gradient(#fff,#f2faff);padding:75px 0 90px!important;min-height:55vh}
.srw-section--inner:nth-child(2n){background:#e8f7ff}
.srw-inner h1{font-size:clamp(39px,6vw,65px);color:var(--srw-navy);margin:0 0 20px}
.srw-inner h2{color:var(--srw-navy);font-size:clamp(27px,4vw,40px);margin:15px 0 20px}
.srw-inner p{max-width:900px}
.srw-inner ul{margin:0 0 20px 1.4rem;padding:0;list-style:disc}
.srw-inner li{padding-bottom:7px}
.srw-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}
.srw-card{background:white;border:1px solid #daedf9;border-radius:18px;padding:25px;box-shadow:0 12px 30px rgba(0,30,70,.06)}
.srw-card h3{color:var(--srw-navy);margin-bottom:13px}
.srw-card p{font-size:15px}
.srw-gallery{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:25px 0}
.srw-gallery img{width:100%;height:auto;aspect-ratio:1.25;object-fit:cover;border-radius:15px}
.srw-legal-note{background:#fff7da;border-left:5px solid var(--srw-gold);padding:20px;border-radius:6px}
/* WooCommerce and enrollment compatibility. */
.srw .srw-registration,.srw-registration{border:none!important;box-shadow:0 20px 50px rgba(8,50,91,.15)!important;border-radius:20px!important;color:var(--srw-navy)!important}
.srw-registration h2{color:var(--srw-navy)!important}
.srw-registration .srw-date{color:var(--srw-red)!important}
.srw-registration .srw-button{border-radius:999px!important;background:var(--srw-red)!important}
.woocommerce .button,.woocommerce-page .button,.woocommerce #payment #place_order{background:var(--srw-red)!important;color:#fff!important;border:0!important;border-radius:999px!important;padding:12px 25px!important}
.woocommerce .button:hover,.woocommerce-page .button:hover{background:#f03d29!important}
.woocommerce-message,.woocommerce-info{border-top-color:var(--srw-blue)!important}
/* Responsive */
@media(max-width:1100px){.srw-hero__mascot{left:-65px;bottom:-27px;width:180px}.srw-hero__photo{height:490px!important}.srw-hero__badge{right:-1px}}
@media(max-width:980px){.srw-hero{padding:50px 0 95px}.srw-hero__grid{grid-template-columns:1fr 1fr;gap:18px;min-height:0}.srw-hero__photo{height:420px!important}.srw-hero__mascot{left:-30px;width:140px}.srw-facts{grid-template-columns:repeat(2,1fr)}.srw-enroll{grid-template-columns:150px 1fr;gap:25px}.srw-card-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.srw{font-size:16px}.srw-hero{padding:34px 0 85px}.srw-hero__grid,.srw-about,.srw-details,.srw-highlights,.srw-enroll{grid-template-columns:1fr}.srw-hero__logo{width:min(270px,72%)}.srw-hero__text{font-size:17px!important}.srw-hero__media{min-height:260px}.srw-hero__photo{height:285px!important;transform:rotate(1deg)}.srw-hero__badge{width:105px;height:105px;font-size:14px;top:7px}.srw-hero__mascot{width:110px;left:-10px;bottom:-24px}.srw-snow-edge{height:42px;background-size:auto 42px}.srw-section--about,.srw-section--details,.srw-section--inner{padding:53px 0!important}.srw-section--enroll{padding:60px 0!important}.srw-about__image-frame{transform:none}.srw-highlight{min-height:260px}.srw-enroll__santa{max-height:160px;width:auto;margin:-10px auto 0}.srw-prices{grid-template-columns:1fr}.srw-facts{gap:10px}.srw-fact{padding:21px 12px;min-height:170px}.srw-fact strong{font-size:14px}.srw-fact span{font-size:12px}.srw-gallery,.srw-card-grid{grid-template-columns:1fr}.srw-btn{width:100%;padding:15px}.srw-question{padding:28px;transform:none}}
@media(max-width:430px){.srw-hero__media{min-height:230px}.srw-hero__photo{height:235px!important}.srw-hero__badge{right:-9px}.srw-facts{grid-template-columns:1fr 1fr}.srw-highlight{padding:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.srw *,.srw *:before,.srw *:after{animation:none!important;transition:none!important}}

.srw-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
