/* =========================================================
   landowner.css
   Page-specific styles for the LANDOWNER page only.
   Loaded in addition to common.css, only on landowner.blade.php.

   FIXED:
   1) Dark/light mode — this file previously had its own :root
      and a hardcoded `body{background:var(--stone);color:var(--ink);}`
      rule, which permanently forced light colors and OVERRODE the
      theme-aware body styling that common.css already sets up via
      [data-theme="dark"]. That's been removed; this page now just
      uses common.css's existing var(--bg-page), var(--text-page),
      var(--text-muted-page), var(--card-bg) and var(--card-line)
      tokens, which already flip correctly when the shared header's
      theme toggle runs (see common.js).
   2) Sidebar/drawer — this file also shipped an entire second,
      unused drawer implementation (.site-nav / .hamburger /
      .side-drawer / .drawer-backdrop, vanilla-JS driven). The real
      drawer already lives in common.css (.site-header / .burger /
      .Vivek-drawer, Bootstrap Offcanvas) via partials/header.blade.php.
      That duplicate block has been deleted. If the drawer still
      doesn't appear after this, the issue is upstream: confirm
      `user.layouts.app` actually @includes your header partial —
      that's outside this CSS file's reach.

   .block-alt sections (dark ink bands) are kept permanently dark
   regardless of the site's light/dark toggle, on purpose — same
   as the footer/newsletter/tagline-strip elsewhere on the site.
   ========================================================= */

/* ============ HERO ============ */
.hero{
  position:relative; min-height:30vh; display:flex; align-items:flex-end; overflow:hidden;
  margin-top:0;
}
.hero-bg{
  position:absolute; inset:0;
  background-image:
    linear-gradient(180deg, rgba(10,8,6,.2) 0%, rgba(8,6,5,.55) 60%, rgba(6,5,4,.92) 100%),
    url('/assets/img/project/Scene%202_1.png');
  background-size:cover; background-position:center 30%;
  animation:kenburns 22s ease-in-out infinite alternate;
}
@keyframes kenburns{from{transform:scale(1.06);}to{transform:scale(1.14) translate(-1%,-1%);}}
.hero-content h1{color:#fff; font-size:clamp(34px,5vw,52px); font-weight:400; margin-bottom:42px; line-height:1.15;}

.float-actions{
  position:absolute; right:0; top:150px; z-index:15; display:flex; flex-direction:column;
}
.float-actions .fa-btn{
  width:66px; background:rgba(20,16,13,.6); backdrop-filter:blur(6px); color:#fff;
  text-align:center; padding:14px 4px; font-size:.66rem; letter-spacing:.3px;
  border-bottom:1px solid rgba(255,255,255,.1); transition:background .3s ease, color .3s ease;
}
.float-actions .fa-btn i{display:block; font-size:1.1rem; margin-bottom:5px;}
.float-actions .fa-btn:hover{background:var(--gold); color:#141210;}

.chat-bubble{
  position:fixed; bottom:30px; right:30px; width:54px; height:54px; border-radius:50%;
  background:var(--ink); display:flex; align-items:center; justify-content:center; z-index:1020;
  box-shadow:0 10px 26px rgba(0,0,0,.35); border:1px solid rgba(255,255,255,.14);
  transition:background .3s ease, transform .3s ease;
}
.chat-bubble:hover{background:var(--gold); transform:translateY(-2px);}
.chat-bubble i{color:#fff; font-size:1.35rem; transition:color .3s ease;}
.chat-bubble:hover i{color:#141210;}

/* ============ SECTIONS ============ */
section.block{padding:110px 0;}

/* Always-dark contrast band, independent of the site's light/dark toggle
   — same treatment as the footer/newsletter/tagline-strip. */
.block-alt{background:var(--ink); color:var(--sand);}
.block-alt .section-text{color:var(--sand-dim);}

.section-title{font-size:clamp(26px,3.2vw,38px); margin-bottom:22px; line-height:1.25;}
.section-text{color:var(--text-muted-page); font-size:.98rem; line-height:1.85; margin-bottom:16px;}

/* ============ TESTIMONIAL CARD (theme-aware) ============ */
.testimonial-card{
  background:var(--card-bg); border:1px solid var(--card-line); border-radius:14px;
  padding:30px 30px 34px; color:var(--text-page);
  box-shadow:0 24px 60px rgba(20,16,13,.14);
  transition:background .4s var(--ease), border-color .4s var(--ease), color .4s var(--ease);
}
.testimonial-card .kicker{
  font-family:'Fraunces',serif; font-size:1.05rem; font-weight:500; letter-spacing:.3px; line-height:1.3; color:var(--text-page);
}
.testimonial-card .quote-mark{font-family:'Fraunces',serif; font-size:2.8rem; color:var(--gold); line-height:.4;}
.testimonial-card .tphoto{
  width:100%; height:230px; border-radius:10px; margin:18px 0; background-size:cover; background-position:center;
  background-image:linear-gradient(165deg,#b9d4e6,#587a91 55%,#2c3742),repeating-linear-gradient(90deg,rgba(0,0,0,.08) 0 10px, transparent 10px 30px);
}
.testimonial-card blockquote{font-size:.94rem; line-height:1.65; font-style:italic; color:var(--text-muted-page); margin-bottom:16px;}
.testimonial-card .cust-name{font-weight:700; font-size:.95rem;}
.testimonial-card .cust-role{font-size:.78rem; color:var(--text-muted-page);}
.testimonial-card .Vivek-stamp{
  width:48px; height:48px; border:1px solid var(--border-soft); border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-family:'Fraunces',serif; font-weight:600; font-size:.85rem;
}

/* ============ VIDEO CARD ============ */
.video-card{
  position:relative; border-radius:14px; overflow:hidden; height:300px; cursor:pointer;
  background-size:cover; background-position:center;
  background-image:
    linear-gradient(180deg, rgba(0,0,0,.55), rgba(0,0,0,.1) 40%, rgba(0,0,0,.7)),
    url('../img/project/Scene 5_1.png');
}
.video-card .badge-top{position:absolute; top:18px; left:18px; display:flex; align-items:center; gap:8px;}
.video-card .badge-top .logo-mini{
  width:28px; height:28px; border-radius:50%; background:#fff; display:flex; align-items:center; justify-content:center;
  font-family:'Fraunces',serif; font-weight:700; font-size:.72rem; color:var(--ink);
}
.video-card .cap-title{position:absolute; top:48px; left:18px; font-size:1.05rem; font-weight:500; color:#fff;}
.video-card .cap-bottom{position:absolute; bottom:18px; left:18px;}
.video-card .cap-bottom .proj{font-family:'Fraunces',serif; font-size:1.35rem; font-style:italic; color:#fff;}
.video-card .cap-bottom .loc{font-size:.68rem; letter-spacing:.5px; color:var(--sand-dim);}
.play-btn{
  position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
  width:58px; height:58px; border-radius:50%; background:var(--gold);
  display:flex; align-items:center; justify-content:center; border:none;
  box-shadow:0 10px 26px rgba(0,0,0,.4); transition:transform .25s ease;
}
.play-btn:hover{transform:translate(-50%,-50%) scale(1.08);}
.play-btn i{color:#141210; font-size:1.4rem; margin-left:3px;}

/* ============ FRAMED PHOTO (theme-aware) ============ */
.framed-photo{background:var(--card-bg); border-radius:14px; box-shadow:0 24px 60px rgba(20,16,13,.14); transition:background .4s var(--ease);}
.framed-photo .fphoto{
  width:100%; height:340px; border-radius:6px; background-size:cover; background-position:center; overflow:hidden;
}

/* ============ REVIEWS ============
   Sits inside .block-alt, which is always dark by design, so these
   stay on the fixed dark palette regardless of the site theme. */
.review-card{background:var(--panel); border:1px solid var(--line); border-radius:14px; padding:28px; height:100%; transition:border-color .3s ease;}
.review-card:hover{border-color:var(--gold);}
.review-card .stars{color:var(--gold); font-size:.85rem; margin-bottom:14px; letter-spacing:2px;}
.review-card p.rtext{color:#d8d3c8; font-size:.92rem; line-height:1.75; min-height:76px;}
.review-avatar{width:36px; height:36px; border-radius:50%; background:#33291d; display:flex; align-items:center; justify-content:center; color:var(--sand-dim); font-size:.9rem;}
.rev-name{font-size:.9rem; font-weight:600; color:#fff;}
.rev-role{font-size:.76rem; color:var(--sand-dim);}

/* ============ PAGINATION (kept in case you bring server pagination back) ============ */
.site-pagination{gap:8px;}
.site-pagination .page-link{
  background:transparent; border:1px solid rgba(255,255,255,.22); color:#fff;
  border-radius:50%; width:42px; height:42px;
  display:flex; align-items:center; justify-content:center;
  font-size:13.5px; font-weight:600; padding:0;
  transition:background .3s var(--ease), border-color .3s var(--ease), color .3s var(--ease);
}
.site-pagination .page-link:hover{background:rgba(232,193,90,.1); border-color:var(--gold); color:var(--gold);}
.site-pagination .page-item.active .page-link{background:var(--gold); border-color:var(--gold); color:#141210;}
.site-pagination .page-item.disabled .page-link{opacity:.3; pointer-events:none;}

@media (max-width:991px){
  .hero{min-height:72vh;}
  .float-actions{display:none;}
  section.block{padding:70px 0;}
}