/*
Theme Name: Nailan Raw
Theme URI: https://example.com
Author: Alicia
Description: Minimal raw WordPress theme with Sportan-style header/footer and a homepage slider.
Version: 1.0.0
Text Domain: nailan
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

:root {
  --nailan-max: 1200px;
}

body {
  margin:0;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  line-height:1.6;
  color:#111;
}

a { color: inherit; }

.center {
  max-width: var(--nailan-max);
  margin: 0 auto;
  padding: 0 16px;
}

.nailan-header-wrap {
  border-bottom: 1px solid rgba(0,0,0,.08);
  background: #fff;
}

.nailan-header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding: 14px 0;
  gap: 16px;
}

.nailan-brand {
  display:flex;
  align-items:center;
  gap: 10px;
  text-decoration:none;
}

.nailan-brand img {
  height: 42px;
  width: auto;
  display:block;
}

.nailan-site-title {
  font-weight: 700;
  letter-spacing: .2px;
}

.nailan-nav ul {
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  gap: 18px;
  flex-wrap: wrap;
}

.nailan-nav a {
  text-decoration:none;
  padding: 8px 0;
  opacity: .9;
}
.nailan-nav a:hover { opacity: 1; }

.nailan-slider-wrap {
  background:#0b0b0b;
}

.nivo-container {
  width: 100%;
  max-width: none;
  padding: 0;
}

#nailan-slider img{
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}

 (max-width: 900px) {
  #nailan-slider img{
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}
}
 (max-width: 520px) {
  #nailan-slider img{
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}
}

.nailan-caption-inner {
  padding: 28px 0;
  background: linear-gradient(0deg, rgba(0,0,0,.70), rgba(0,0,0,0));
}

.nailan-slide-title {
  font-size: 36px;
  font-weight: 800;
  line-height: 1.15;
  margin: 0 0 10px;
}

.nailan-slide-desc {
  font-size: 16px;
  max-width: 640px;
  opacity: .92;
}

.nailan-slide-btn {
  display: inline-block;
  margin-top: 14px;
  padding: 10px 14px;
  border: 1px solid rgba(255,255,255,.6);
  border-radius: 999px;
  text-decoration: none;
  font-size: 14px;
}

.nailan-slide-btn:hover {
  border-color: rgba(255,255,255,.9);
}


.nailan-content {
  padding: 28px 0 44px;
}

.nailan-footer-wrap {
  margin-top: 44px;
  background: #0b0b0b;
  color: #fff;
}

.nailan-footer-infobox {
  padding: 22px 0;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.nailan-footer-cols {
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
  padding: 28px 0;
}

.nailan-footer-cols h3 {
  margin: 0 0 10px;
  font-size: 16px;
}

.nailan-footer-cols a {
  color: #fff;
  text-decoration: none;
  opacity: .9;
}
.nailan-footer-cols a:hover { opacity: 1; }

.nailan-copyright {
  border-top: 1px solid rgba(255,255,255,.12);
  padding: 14px 0;
  font-size: 14px;
  opacity: .9;
}

@media (max-width: 900px) {
  .nailan-footer-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 520px) {
  .nailan-nav ul { gap: 12px; }
  .nailan-footer-cols { grid-template-columns: 1fr; }
}

/* --- Slider: full width + nicer captions --- */
.nailan-slider-wrap { width: 100%; }
.nailan-slider-wrap .nivo-container { max-width: none; }

/* Ensure caption can be positioned nicely */
.nivo-caption{
  background: none;
  opacity: 1;
  padding: 0;
  height: 100%;
}
.nivo-caption .nailan-caption-inner{
  position: absolute;
  left: 0;
  right: 0;
  bottom: 18%;
}

/* Navigation arrows */
.nivo-directionNav a{
  position: absolute;
  top: 50%;
  transform: translateY(-100%);
  width: 46px;
  height: 46px;
  border-radius: 999px;
  background: rgba(0,0,0,.35);
  border: 1px solid rgba(255,255,255,.25);
  text-decoration: none;
  z-index: 12;
}
.nivo-directionNav a:hover{
  background: rgba(0,0,0,.55);
  border-color: rgba(255,255,255,.4);
}
.nivo-directionNav a.nivo-prevNav{ left: 18px; }
.nivo-directionNav a.nivo-nextNav{ right: 18px; }
.nivo-directionNav a.nivo-prevNav::before,
.nivo-directionNav a.nivo-nextNav::before{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: rgba(255,255,255,.95);
  font-size: 26px;
  line-height: 1;
  content: '';
}
.nivo-directionNav a.nivo-prevNav::before{ content: '‹'; }
.nivo-directionNav a.nivo-nextNav::before{ content: '›'; }

/* Dots (pagination) */
.nivo-controlNav{
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 16px;
  z-index: 12;
}
.nivo-controlNav a{
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.35);
  margin: 0 6px;
  text-indent: -9999px;
}
.nivo-controlNav a.active{
  background: rgba(255,255,255,.9);
}

@media (max-width: 900px){
  .nivo-directionNav a{ width: 42px; height: 42px; }
  .nivo-directionNav a.nivo-prevNav{ left: 10px; }
  .nivo-directionNav a.nivo-nextNav{ right: 10px; }
  .nivo-caption .nailan-caption-inner{ bottom: 14%; }
}

@media (max-width: 520px){
  .nivo-controlNav{ bottom: 10px; }
  .nivo-caption .nailan-caption-inner{ bottom: 12%; }
  .nailan-slide-title{ font-size: 30px; }
}

.nailan-caption-inner {
  padding: 42px 0;
  background: linear-gradient(to right, rgba(0,0,0,.65), rgba(0,0,0,0));
}

.nailan-slide-title {
  font-size: 40px;
  line-height: 1.1;
  font-weight: 800;
  margin: 0 0 10px;
}

.nailan-slide-desc {
  max-width: 620px;
  font-size: 16px;
  opacity: .95;
}

.nailan-slide-btn {
  display: inline-block;
  margin-top: 14px;
  padding: 10px 14px;
  border-radius: 10px;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.22);
  text-decoration: none;
}

/* --- Footer: richer + cleaner --- */
.nailan-footer-top {
  padding: 28px 0;
  border-bottom: 1px solid rgba(255,255,255,.12);
  background: radial-gradient(80% 80% at 0% 0%, rgba(255,255,255,.08), rgba(255,255,255,0));
}

.nailan-footer-top-inner {
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: 24px;
  align-items: start;
}

.nailan-footer-brandlink {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
}

.nailan-footer-title {
  font-weight: 800;
  letter-spacing: .2px;
}

.nailan-footer-tagline {
  margin: 10px 0 0;
  opacity: .85;
  max-width: 520px;
}

.nailan-footer-cta-title {
  font-weight: 700;
  margin-bottom: 6px;
}

.nailan-footer-cta-text {
  margin: 0;
  opacity: .85;
}

.nailan-footer-bottom {
  display: flex;
  gap: 12px;
  justify-content: space-between;
  align-items: center;
  border-top: 1px solid rgba(255,255,255,.12);
  padding: 14px 0;
  font-size: 14px;
  opacity: .92;
}

.nailan-credits {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}

.nailan-credits a {
  color: #fff;
  text-decoration: none;
  opacity: .92;
}
.nailan-credits a:hover { opacity: 1; }

.nailan-sep { opacity: .6; }

@media (max-width: 900px) {
  .nailan-footer-top-inner { grid-template-columns: 1fr; }
  .nailan-footer-bottom { flex-direction: column; align-items: flex-start; }
  .nailan-slide-title { font-size: 32px; }
}

/* Footer enhancements */
.nailan-footer-top {
  padding: 26px 0;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.nailan-footer-brand {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.nailan-footer-logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
}

.nailan-footer-title {
  font-weight: 800;
  letter-spacing: .2px;
}

.nailan-footer-tagline {
  margin: 0;
  max-width: 720px;
  opacity: .85;
}

.nailan-footer-col > *:first-child {
  margin-top: 0;
}

.nailan-footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  flex-wrap: wrap;
  border-top: 1px solid rgba(255,255,255,.12);
  padding: 14px 0;
  font-size: 14px;
  opacity: .92;
}

.nailan-footer-credit {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  align-items: center;
}

.nailan-footer-credit a {
  color: #fff;
  text-decoration: none;
  border-bottom: 1px solid rgba(255,255,255,.35);
}

.nailan-footer-credit a:hover {
  border-bottom-color: rgba(255,255,255,.8);
}

/* --- Slider: full-width enhancement --- */
.nivo-container{
  width: 100%;
  max-width: none;
  padding: 0;
}

#nailan-slider img{
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}

.nailan-caption-inner{
  background: linear-gradient(90deg, rgba(0,0,0,.68), rgba(0,0,0,0));
  padding: 26px 0;
}

.nailan-slide-title{
  font-size: 34px;
  font-weight: 800;
  line-height: 1.15;
  margin-bottom: 8px;
}

.nailan-slide-desc{
  max-width: 48ch;
  opacity: .92;
  margin-bottom: 14px;
}

.nailan-slide-btn{
  display: inline-block;
  text-decoration: none;
  padding: 10px 16px;
  border: 1px solid rgba(255,255,255,.6);
  border-radius: 999px;
}

@media (max-width: 900px){
  #nailan-slider img{
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}
  .nailan-slide-title{ font-size: 26px; }
}
@media (max-width: 520px){
  #nailan-slider img{
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}
}

/* --- Footer: richer layout --- */
.nailan-footer-top{
  padding: 28px 0;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.nailan-footer-brand{
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.nailan-footer-logo{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
}

.nailan-footer-title{
  font-weight: 800;
  letter-spacing: .2px;
}

.nailan-footer-tagline{
  margin: 0;
  opacity: .9;
  max-width: 70ch;
}

.nailan-footer-col > *:first-child{ margin-top: 0; }

.nailan-footer-bottom{
  border-top: 1px solid rgba(255,255,255,.12);
  padding: 14px 0;
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  font-size: 14px;
  opacity: .92;
}

.nailan-footer-credit{
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

.nailan-footer-credit a{ color: #fff; text-decoration: underline; }

/* === Nailan Slider Controls Visibility Fix (v6) === */
.nailan-slider-wrap,
.nivo-container,
#nailan-slider{
  position: relative;
}

/* Ensure slider images are full width and responsive */
#nailan-slider img{
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}
@media (max-width: 900px){
  #nailan-slider img{
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}
}
@media (max-width: 520px){
  #nailan-slider img{
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}
}

/* Place caption nicely and keep it above images */
.nivo-caption{
  background: transparent !important;
  opacity: 1 !important;
  padding: 0 !important;
  height: 100% !important;
  z-index: 15 !important;
}
.nivo-caption .nailan-caption-inner{
  position: absolute !important;
  left: 0;
  right: 0;
  bottom: 18%;
  padding: 42px 0 !important;
  background: linear-gradient(to right, rgba(0,0,0,.65), rgba(0,0,0,0)) !important;
}
@media (max-width: 900px){
  .nivo-caption .nailan-caption-inner{ bottom: 14%; }
}
@media (max-width: 520px){
  .nivo-caption .nailan-caption-inner{ bottom: 12%; }
}

/* Arrows */
.nivo-directionNav{
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 30;
}
.nivo-directionNav a{
  pointer-events: auto;
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-100%) !important;
  z-index: 31 !important;

  width: 46px !important;
  height: 46px !important;
  border-radius: 999px !important;

  background: rgba(0,0,0,.55) !important;
  border: 1px solid rgba(255,255,255,.25) !important;

  text-decoration: none !important;
  opacity: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.nivo-directionNav a:hover{
  background: rgba(0,0,0,.75) !important;
  border-color: rgba(255,255,255,.45) !important;
}
.nivo-prevNav{ left: 24px !important; }
.nivo-nextNav{ right: 24px !important; }

.nivo-prevNav::before,
.nivo-nextNav::before{
  content: '';
  color: rgba(255,255,255,.95);
  font-size: 26px;
  line-height: 1;
}
.nivo-prevNav::before{ content: '‹'; }
.nivo-nextNav::before{ content: '›'; }

@media (max-width: 900px){
  .nivo-directionNav a{ width: 42px !important; height: 42px !important; }
  .nivo-prevNav{ left: 10px !important; }
  .nivo-nextNav{ right: 10px !important; }
}

/* Dots */
.nivo-controlNav{
  position: absolute !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  bottom: 16px !important;
  z-index: 32 !important;
  display: flex !important;
  gap: 12px;
}
.nivo-controlNav a{
  display: inline-block !important;
  width: 12px !important;
  height: 12px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,0.5) !important;
  text-indent: -9999px;
  overflow: hidden;
  cursor: pointer;
}
.nivo-controlNav a.active{
  background: rgba(255,255,255,0.95) !important;
}
@media (max-width: 520px){
  .nivo-controlNav{ bottom: 10px !important; gap: 10px; }
  .nivo-controlNav a{ width: 10px !important; height: 10px !important; }
}

/* === Nailan Slider Controls Visibility Fix (v6) === */
.nailan-slider-wrap,
.nivo-container,
#nailan-slider{ position: relative; }

/* Ensure slider always lays out correctly */
.nivoSlider{ position: relative; overflow: hidden; }

/* Caption positioning (premium hero style) */
.nivo-caption{
  background: transparent !important;
  opacity: 1 !important;
  padding: 0 !important;
  height: 100% !important;
  z-index: 10 !important;
}
.nivo-caption .nailan-caption-inner{
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 18% !important;
  padding: 44px 0 !important;
  background: linear-gradient(to right, rgba(0,0,0,.65), rgba(0,0,0,0)) !important;
}

/* Arrow controls */
.nivo-directionNav{ display: block !important; }
.nivo-directionNav a{
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-100%) !important;
  z-index: 30 !important;
  width: 46px !important;
  height: 46px !important;
  border-radius: 999px !important;
  background: rgba(0,0,0,.55) !important;
  border: 1px solid rgba(255,255,255,.25) !important;
  text-decoration: none !important;
  opacity: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
}
.nivo-directionNav a:hover{
  background: rgba(0,0,0,.75) !important;
  border-color: rgba(255,255,255,.4) !important;
}
.nivo-prevNav{ left: 24px !important; }
.nivo-nextNav{ right: 24px !important; }

.nivo-prevNav::before,
.nivo-nextNav::before{
  color: rgba(255,255,255,.95) !important;
  font-size: 28px !important;
  line-height: 1 !important;
  content: '';
}
.nivo-prevNav::before{ content: '‹'; }
.nivo-nextNav::before{ content: '›'; }

/* Pagination dots */
.nivo-controlNav{
  position: absolute !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  bottom: 18px !important;
  z-index: 30 !important;
  display: block !important;
}
.nivo-controlNav a{
  display: inline-block !important;
  width: 11px !important;
  height: 11px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.45) !important;
  margin: 0 6px !important;
  text-indent: -9999px !important;
  overflow: hidden !important;
  cursor: pointer !important;
}
.nivo-controlNav a.active{ background: rgba(255,255,255,.95) !important; }

@media (max-width: 900px){
  .nivo-directionNav a{ width: 42px !important; height: 42px !important; }
  .nivo-prevNav{ left: 12px !important; }
  .nivo-nextNav{ right: 12px !important; }
  .nivo-caption .nailan-caption-inner{ bottom: 14% !important; padding: 34px 0 !important; }
  .nailan-slide-title{ font-size: 32px !important; }
}
@media (max-width: 520px){
  .nivo-controlNav{ bottom: 12px !important; }
  .nivo-caption .nailan-caption-inner{ bottom: 12% !important; padding: 26px 0 !important; }
  .nailan-slide-title{ font-size: 28px !important; }
}


/* --- Sportan-style footer (Nailan) --- */
.nailan-footer-wrap{
  background:#151515;
  color:#fff;
  padding:64px 0 32px;
}
.nailan-footer-inner{max-width:1200px;margin:0 auto;padding:0 32px;}
.nailan-footer-logoarea{text-align:center;margin-bottom:28px;}
.nailan-footer-title{display:inline-block;font-weight:700;letter-spacing:.12em;text-transform:uppercase;}
.nailan-footer-divider{border:0;border-top:1px solid rgba(255,255,255,.12);margin:32px 0 42px;}
.nailan-footer-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:48px;}
.nailan-footer-heading{font-size:24px;margin:0 0 18px;font-weight:700;}
.nailan-footer-text p{margin:0 0 10px;opacity:.92;line-height:1.7;}
.nailan-footer-links{list-style:none;margin:0;padding:0;}
.nailan-footer-links li{margin:10px 0;}
.nailan-footer-links a{color:rgba(255,255,255,.92);text-decoration:none;display:inline-flex;gap:10px;align-items:center;}
.nailan-footer-links a:hover{color:#fff;}
.nailan-chev{opacity:.8;font-size:18px;display:inline-block;transform:translateY(-1px);}
.nailan-footer-bottom{
  border-top:1px solid rgba(255,255,255,.12);
  margin-top:52px;
  padding-top:22px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
}
.nailan-footer-copy{opacity:.9;}
.nailan-social-icons{display:flex;gap:18px;align-items:center;justify-content:flex-end;}
.nailan-social-link{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;color:#fff;opacity:.9;}
.nailan-social-link:hover{opacity:1;}
.nailan-social-link svg{width:18px;height:18px;fill:currentColor;display:block;}
.nailan-social-menu{list-style:none;margin:0;padding:0;display:flex;gap:18px;align-items:center;}
.nailan-social-menu a{color:#fff;opacity:.9;text-decoration:none;}
.nailan-social-menu a:hover{opacity:1;}
@media (max-width: 980px){
  .nailan-footer-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;}
}
@media (max-width: 560px){
  .nailan-footer-inner{padding:0 18px;}
  .nailan-footer-cols{grid-template-columns:1fr;}
  .nailan-footer-bottom{flex-direction:column;align-items:flex-start;}
}


/* Footer Social Icons (Customizer) */
.nailan-footer-social{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:18px;
}
.nailan-footer-social .nailan-social-link{
  display:inline-flex;
  width:20px;
  height:20px;
  opacity:0.9;
}
.nailan-footer-social .nailan-social-link:hover{ opacity:1; }
.nailan-footer-social svg{
  width:20px;
  height:20px;
  fill: currentColor;
}
/* Ensure footer bottom bar has contrast */
.nailan-footer-bottom, .nailan-footer-bottom-right, .nailan-footer-bottom-left{
  color: rgba(255,255,255,0.85);
}


/* === Nailan Premium (Customizer-driven) === */

.nailan-site-wrap{min-height:100vh;}
.nailan-header-wrap{position:relative; z-index:50;}
.nailan-header--sticky{position:sticky; top:0;}
.nailan-topbar{font-size:13px; padding:10px 0; border-bottom:1px solid rgba(0,0,0,0.06); background:rgba(0,0,0,0.02);}
.nailan-header{display:flex; align-items:center; justify-content:space-between; gap:18px; padding:16px 0;}
.nailan-brand img{max-height:64px; width:auto; display:block;}
.nailan-nav ul{display:flex; gap:18px; list-style:none; margin:0; padding:0;}
.nailan-nav a{ text-decoration:none; font-weight:500; }
.nailan-header-cta{display:inline-flex; align-items:center; justify-content:center; padding:10px 16px; border-radius:999px; background:var(--n-accent); color:#111; text-decoration:none; font-weight:600; white-space:nowrap;}
.nailan-header-cta:hover{filter:brightness(0.96);}

/* Blog layouts */
.nailan-blog--grid article{border:1px solid rgba(0,0,0,0.08); border-radius:16px; padding:18px; background:#fff;}
.nailan-blog--grid .center{display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:18px;}
.nailan-blog--grid .center > *{margin:0;}
.nailan-post-meta{font-size:12px; opacity:0.7; margin:8px 0 10px;}
.nailan-post-excerpt{opacity:0.95;}
@media (max-width: 980px){ .nailan-blog--grid .center{grid-template-columns: repeat(2, minmax(0,1fr));} }
@media (max-width: 620px){ .nailan-blog--grid .center{grid-template-columns: 1fr;} }

/* Slider premium caption */
.nailan-slide-title{font-size: clamp(30px, 4vw, 56px); letter-spacing:-0.02em; font-weight:700; color:#fff; margin-bottom:10px;}
.nailan-slide-desc{font-size: clamp(14px, 1.6vw, 18px); color: rgba(255,255,255,0.92); max-width: 560px;}
.nailan-slide-btn{display:inline-flex; margin-top:18px; padding:12px 18px; border-radius:999px; text-decoration:none; font-weight:700;}

/* Footer polish */
.nailan-footer-inner{max-width: var(--n-container, 1200px); margin: 0 auto; padding: 64px 20px 26px;}
.nailan-footer-cols{display:grid; gap:34px;}
.nailan-footer-heading, .widget-title{font-weight:700; letter-spacing:0.02em; text-transform:uppercase; font-size:12px; opacity:0.95;}
.nailan-footer-links{list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:10px;}
.nailan-footer-links a{text-decoration:none;}
.nailan-footer-divider{border:0; border-top:1px solid rgba(255,255,255,0.12); margin: 28px 0 34px;}
.nailan-footer-bottom{display:flex; align-items:center; justify-content:space-between; gap:18px; padding-top:18px; border-top:1px solid rgba(255,255,255,0.12); margin-top:34px;}
.nailan-back-to-top{position:fixed; right:18px; bottom:18px; width:44px; height:44px; border-radius:999px; border:0; background:rgba(0,0,0,0.55); color:#fff; cursor:pointer; z-index:100;}
.nailan-back-to-top:hover{background:rgba(0,0,0,0.75);}


/* Slider caption visibility helper */
.nivo-html-caption.nailan-caption-active{display:flex !important;}


/* Base button class (styled via Customizer dynamic CSS) */
.nailan-btn{cursor:pointer;}


/* Footer widgets */
.nailan-footer-widget { margin-bottom: 18px; }
.nailan-footer-widget-title { margin: 0 0 10px; font-weight: 600; }
.nailan-footer-columns { display: grid; gap: 22px; }
@media (min-width: 768px){
  .nailan-footer-columns { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 767px){
  .nailan-footer-col-4 { display:none; }
}


/* Footer logo */
.nailan-footer-logo-img{max-width:160px;height:auto;display:block;}


/* === Nailan: Global Fullwidth Layout (Elementor-friendly) === */
.nailan-fullwidth,
.nailan-fullwidth .site-main,
.nailan-fullwidth .content-area,
.nailan-fullwidth .entry-content,
.nailan-fullwidth .page-content {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Remove common theme container limits (safe overrides) */
.site,
.site-content,
.wrap,
.container,
.nailan-container,
.content-area,
.site-main,
#content,
#primary,
#main {
  max-width: 100% !important;
}

/* Ensure Elementor fullwidth backgrounds truly stretch */
.elementor-section.elementor-section-stretched,
.elementor-section-stretched {
  width: 100% !important;
  left: 0 !important;
}

/* Prevent unexpected horizontal scroll */
html, body { overflow-x: hidden; }

