/*
Theme Name: NerjaViews Sunshine
Theme URI: https://nerjaviews.com
Author: NerjaViews
Description: Sunny Mediterranean live camera and travel homepage.
Version: 1.2.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: nerjaviews
*/
:root{--navy:#08234b;--blue:#008fdf;--sky:#eaf7ff;--gold:#ffd238;--muted:#5b7593}*{box-sizing:border-box}body{margin:0;color:var(--navy);background:#fff;font:16px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.wrap{max-width:1440px;margin:auto;padding:0 22px}.topline{height:35px;background:linear-gradient(90deg,#c8f1ff,#4db9ec);background-image:url('assets/coast.webp');background-size:cover;background-position:center 45%}.header{background:white;box-shadow:0 2px 12px #07274718;position:relative;z-index:2}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:85px}.logo{font-weight:850;letter-spacing:-2px;font-size:40px;line-height:1}.logo span{color:var(--blue)}.logo small{display:block;font-size:10px;letter-spacing:3px;text-align:center;font-weight:700;margin-top:5px}.nav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:650}.nav a:hover,.nav a.active{color:var(--blue)}.nav a.active{background:#007cdb;color:#fff;padding:11px 16px;border-radius:6px}.menu-toggle{display:none;border:0;background:var(--sky);border-radius:8px;padding:10px;font-size:18px}.hero-layout{display:grid;grid-template-columns:minmax(0,4.3fr) minmax(210px,1fr);gap:14px;margin-top:14px}.hero-video{height:520px;position:relative;overflow:hidden;border-radius:12px;background:#0e6295 url('assets/hero.webp') center/cover}.video-shade{position:absolute;inset:0;background:linear-gradient(180deg,#00182b4a,transparent 30%,transparent 65%,#00182b73)}.live-pill{position:absolute;top:18px;left:18px;background:#ff2347;color:white;font-weight:800;border-radius:7px;padding:9px 14px;z-index:1}.cam-name{position:absolute;top:18px;left:112px;background:#072e56c9;color:white;border-radius:7px;padding:10px 14px;font-weight:700;z-index:1}.video-logo{position:absolute;bottom:20px;left:22px;color:white;text-shadow:0 2px 10px #000;font-size:34px;font-weight:850;letter-spacing:-1px;z-index:1}.video-logo span{color:#30c1ff}.video-logo small{display:block;font-size:9px;letter-spacing:3px}.video-frame{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:1}.hero-video.has-stream .video-shade,.hero-video.has-stream .video-logo{display:none}.weather{border-radius:12px;background:#f7fbff;box-shadow:0 2px 12px #08234b15;padding:20px;display:flex;flex-direction:column;gap:18px}.weather h3{margin:0;font-size:23px}.weather-temp{display:flex;align-items:center;gap:12px;font-size:40px;font-weight:800}.sun-icon{font-size:52px}.weather-note{font-size:13px;color:var(--muted)}.weather-grid{border-top:1px solid #dce7f1;padding-top:16px;display:grid;grid-template-columns:1fr 1fr;gap:14px;text-align:center}.weather-grid strong{display:block}.weather-grid small{color:var(--muted)}.moon{border-top:1px solid #dce7f1;padding-top:12px}.moon-symbol{font-size:44px}.camera-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:14px}.cam-card{height:230px;position:relative;overflow:hidden;border-radius:10px;background:#12476e}.cam-card img{height:100%;width:100%;object-fit:cover;transition:transform .3s}.cam-card:hover img{transform:scale(1.05)}.cam-card:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#000c)}.cam-card .state{position:absolute;top:12px;left:12px;background:#ff2347;color:#fff;border-radius:5px;font-size:12px;font-weight:800;padding:5px 9px;z-index:1}.cam-card .state.soon{background:#083c6a}.cam-label{position:absolute;bottom:15px;left:15px;color:white;z-index:1}.cam-label strong{display:block;font-size:19px}.cam-label small{font-size:13px}.round-arrow{position:absolute;bottom:16px;right:14px;z-index:1;border-radius:50%;background:#00589b;color:white;padding:8px 14px;font-size:20px}.quicklinks{margin-top:15px;border-radius:12px;background:#eaf6ff;display:grid;grid-template-columns:repeat(6,1fr);padding:22px 8px;text-align:center}.quicklinks a{border-right:1px solid #d4e7f6;padding:0 8px}.quicklinks a:last-child{border:0}.quicklinks b{display:block;font-size:14px}.quicklinks small{display:block;color:var(--muted);font-size:12px}.quicklinks .emoji{display:block;font-size:32px;margin-bottom:5px}.feature{margin-top:16px;min-height:350px;background:#c5eefe url('assets/balcon.webp') center/cover;position:relative;display:flex;align-items:center}.feature:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#eafaffeb 0%,#eafaffc7 34%,transparent 75%)}.feature-content{position:relative;z-index:1;width:min(540px,95%);padding:35px}.feature h1{font-family:Georgia,serif;font-style:italic;font-size:clamp(32px,4vw,56px);line-height:1.13;margin:0 0 20px}.feature p{max-width:410px}.cta{display:inline-block;background:var(--gold);border-radius:35px;padding:12px 24px;font-weight:800;margin-top:8px}.discover{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:16px;margin-bottom:35px}.discover-card{border:1px solid #e5eaf1;box-shadow:0 2px 8px #09264a10;border-radius:10px;overflow:hidden}.discover-card img{width:100%;height:170px;object-fit:cover}.discover-card .copy{padding:12px 14px}.discover-card b{display:block;font-size:19px}.discover-card small{color:var(--muted)}footer{background:#08234b;color:white;padding:28px 0;font-size:14px}.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.notice{padding:12px 22px;background:#fff8dc;color:#735500;font-size:13px;text-align:center}@media(max-width:950px){.nav{gap:12px}.hero-layout{grid-template-columns:1fr}.hero-video{height:450px}.weather{display:grid;grid-template-columns:repeat(3,1fr);align-items:center}.weather-grid{border:0;padding:0}.moon{border:0;padding:0}.camera-grid{grid-template-columns:repeat(2,1fr)}.quicklinks{grid-template-columns:repeat(3,1fr);row-gap:22px}.discover{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.wrap{padding:0 12px}.topline{height:22px}.header-inner{min-height:72px}.logo{font-size:30px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:94px;left:0;right:0;background:#fff;padding:18px;box-shadow:0 10px 20px #0002;flex-direction:column;align-items:stretch}.nav.open{display:flex}.hero-video{height:290px}.cam-name{font-size:11px;left:95px;right:8px;padding:11px 8px}.live-pill{font-size:12px;padding:10px 9px;left:9px}.video-logo{font-size:24px}.weather{grid-template-columns:1fr 1fr;padding:14px}.weather h3{grid-column:1/-1}.weather-temp{font-size:27px}.weather-grid{grid-column:1/-1}.moon{grid-column:1/-1}.cam-card{height:175px}.cam-label strong{font-size:14px}.round-arrow{display:none}.quicklinks{grid-template-columns:repeat(3,1fr)}.quicklinks .emoji{font-size:26px}.quicklinks b{font-size:12px}.quicklinks small{font-size:10px}.feature{min-height:300px;background-position:65% center}.feature:before{background:linear-gradient(90deg,#eafaffed 0%,#eafaffb8 68%,#eafaff55)}.feature-content{padding:22px}.discover-card img{height:115px}.discover-card b{font-size:15px}}

/* v1.1: horizontal brand and four selectable cameras */
.logo{display:flex;align-items:center;flex:0 0 auto;letter-spacing:normal}.logo img{width:245px;height:auto;max-height:78px;object-fit:contain}.cam-card{display:block;width:100%;border:3px solid transparent;text-align:left;padding:0;cursor:pointer;font:inherit;color:inherit}.cam-card.selected{border-color:#08a9ee;box-shadow:0 0 0 2px #b7eaff}.cam-card:focus-visible{outline:3px solid #ffb400;outline-offset:2px}.hero-video.has-stream .live-pill,.hero-video.has-stream .cam-name{display:none}@media(max-width:950px){.logo img{width:195px}}@media(max-width:650px){.logo img{width:180px;max-height:62px}}

/* v1.2: approved softer NerjaViews logo */
.logo img{width:255px;max-height:83px}
@media(max-width:950px){.logo img{width:205px}}
@media(max-width:650px){.logo img{width:180px;max-height:62px}}

/* v1.3: exactly three selectable thumbnails under the main camera */
.camera-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:650px){.camera-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.cam-card{height:120px}.cam-label{left:7px;bottom:7px}.cam-label strong{font-size:11px}.cam-label small{display:none}.cam-card .state{font-size:9px;left:5px;top:5px;padding:3px 5px}}
