:root{
      --rigu:#7b6b5e;
      --sand:#b9ac9d;
      --mist:#dbd9d3;
      --ink:#242321;
      --paper:#f7f5f1;
      --white:#fff;
      --muted:#6d6964;
      --line:rgba(36,35,33,.12);
      --shadow:0 24px 60px rgba(36,35,33,.13);
      --radius:22px;
      --max:1180px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;font-family:"Outfit",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.5}
    img{max-width:100%;display:block}
    a{color:inherit}
    button,input,select,textarea{font:inherit}
    .shell{width:min(var(--max),calc(100% - 40px));margin:auto}
    .topbar{position:absolute;z-index:10;left:0;right:0;top:0;padding:22px 0;color:#fff}
    .topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}
    .brand{display:inline-flex;flex-direction:column;text-decoration:none;line-height:1;letter-spacing:.18em;font-weight:500}
    .brand strong{font-size:24px;letter-spacing:.22em;font-weight:500}
    .brand span{font-size:10px;margin-top:6px;opacity:.86;letter-spacing:.34em}
    .top-cta{display:inline-flex;align-items:center;justify-content:center;padding:11px 17px;border:1px solid rgba(255,255,255,.65);border-radius:999px;text-decoration:none;font-size:14px;background:rgba(0,0,0,.1);backdrop-filter:blur(8px)}
    .hero{min-height:770px;position:relative;display:grid;align-items:end;color:#fff;background:#302e2c;overflow:hidden}
    .hero-media{position:absolute;inset:0}
    .hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 48%}
    .hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,19,18,.76) 0%,rgba(20,19,18,.55) 40%,rgba(20,19,18,.14) 72%,rgba(20,19,18,.08) 100%),linear-gradient(0deg,rgba(20,19,18,.56) 0%,transparent 48%)}
    .hero-content{position:relative;z-index:2;padding:150px 0 70px;max-width:760px}
    .eyebrow{font-size:13px;letter-spacing:.15em;text-transform:uppercase;opacity:.88;margin:0 0 16px}
    h1{font-size:clamp(42px,6.2vw,78px);line-height:.98;font-weight:400;letter-spacing:-.035em;margin:0 0 22px;text-wrap:balance}
    .hero-lede{font-size:clamp(18px,2vw,24px);font-weight:300;max-width:650px;margin:0 0 28px;color:rgba(255,255,255,.92)}
    .offer-strip{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 28px}
    .pill{padding:10px 14px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(255,255,255,.1);backdrop-filter:blur(10px);font-size:14px}
    .hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
    .btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:999px;text-decoration:none;border:1px solid transparent;font-weight:500;cursor:pointer;transition:.2s ease}
    .btn-primary{background:#fff;color:var(--ink)}
    .btn-primary:hover{transform:translateY(-1px);box-shadow:0 10px 30px rgba(0,0,0,.16)}
    .btn-secondary{border-color:rgba(255,255,255,.6);color:#fff;background:transparent}
    .micro{font-size:12px;color:rgba(255,255,255,.72);margin-top:16px;max-width:630px}
    section{padding:92px 0}
    .section-head{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:end;margin-bottom:42px}
    .kicker{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--rigu);font-weight:600;margin-bottom:10px}
    h2{font-size:clamp(34px,4vw,56px);line-height:1.02;font-weight:400;letter-spacing:-.025em;margin:0;text-wrap:balance}
    .section-head p{font-size:18px;color:var(--muted);margin:0;max-width:580px}
    .specs{padding:0;background:#fff;border-bottom:1px solid var(--line)}
    .spec-grid{display:grid;grid-template-columns:repeat(4,1fr)}
    .spec{padding:26px 22px;border-right:1px solid var(--line)}
    .spec:last-child{border-right:0}
    .spec b{display:block;font-size:24px;font-weight:500;letter-spacing:-.02em}
    .spec span{font-size:13px;color:var(--muted)}
    .finance{background:#fff}
    .plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
    .plan{border:1px solid var(--line);border-radius:var(--radius);padding:30px;position:relative;overflow:hidden;background:linear-gradient(180deg,#fff,#fbfaf8)}
    .plan.featured{border-color:var(--rigu);box-shadow:var(--shadow)}
    .badge{display:inline-block;padding:6px 10px;border-radius:999px;background:var(--rigu);color:#fff;font-size:12px;margin-bottom:18px}
    .plan h3{font-size:28px;font-weight:400;letter-spacing:-.02em;margin:0 0 8px}
    .plan .big{font-size:clamp(34px,4vw,52px);line-height:1;font-weight:500;margin:20px 0 8px;letter-spacing:-.04em}
    .plan .caption{color:var(--muted);font-size:14px;margin-bottom:24px}
    .plan dl{display:grid;gap:12px;margin:0;padding-top:18px;border-top:1px solid var(--line)}
    .plan dl div{display:flex;justify-content:space-between;gap:20px}
    .plan dt{color:var(--muted)}
    .plan dd{margin:0;text-align:right;font-weight:500}
    .plan .btn{margin-top:24px;width:100%;background:var(--ink);color:#fff}
    .savings{color:var(--rigu);font-weight:600}
    .gallery{background:var(--paper)}
    .gallery-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:14px}
    .gallery-stack{display:grid;gap:14px}
    .photo{position:relative;overflow:hidden;border-radius:18px;background:#ddd;min-height:280px}
    .photo.tall{min-height:630px}
    .photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .45s ease}
    .photo:hover img{transform:scale(1.02)}
    .photo-label{position:absolute;left:16px;bottom:16px;background:rgba(255,255,255,.92);padding:8px 11px;border-radius:999px;font-size:12px;z-index:2}
    .location{background:var(--ink);color:#fff}
    .location .section-head p{color:rgba(255,255,255,.7)}
    .feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px}
    .feature{padding:22px;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:rgba(255,255,255,.03)}
    .feature b{display:block;font-size:17px;margin-bottom:5px;font-weight:500}
    .feature span{font-size:14px;color:rgba(255,255,255,.66)}
    .lead-wrap{display:grid;grid-template-columns:.86fr 1.14fr;gap:42px;align-items:start}
    .lead-copy{position:sticky;top:24px}
    .lead-copy p{font-size:18px;color:var(--muted);max-width:440px}
    .lead-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:var(--shadow)}
    .form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    label{display:block;font-size:13px;margin-bottom:7px;color:var(--muted)}
    input,select{width:100%;height:50px;border:1px solid var(--line);border-radius:12px;padding:0 14px;background:#fff;color:var(--ink);outline:none}
    input:focus,select:focus{border-color:var(--rigu);box-shadow:0 0 0 3px rgba(123,107,94,.12)}
    .field{margin-bottom:14px}
    .choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
    .choice{position:relative}
    .choice input{position:absolute;opacity:0;pointer-events:none}
    .choice label{height:100%;margin:0;padding:12px;border:1px solid var(--line);border-radius:12px;color:var(--ink);cursor:pointer}
    .choice input:checked+label{border-color:var(--rigu);background:rgba(123,107,94,.06)}
    .choice label b{display:block;font-size:14px;font-weight:500}
    .choice label span{font-size:12px;color:var(--muted)}
    .consent{display:flex;gap:10px;align-items:flex-start;margin:14px 0}
    .consent input{width:18px;height:18px;margin-top:2px;flex:0 0 auto}
    .consent label{margin:0;font-size:12px;line-height:1.4}
    .lead-card .btn{width:100%;background:var(--rigu);color:#fff;border:0}
    .form-note{font-size:12px;color:var(--muted);margin:12px 0 0}
    .faq{background:#fff}
    details{border-top:1px solid var(--line);padding:20px 0}
    details:last-child{border-bottom:1px solid var(--line)}
    summary{cursor:pointer;font-size:18px;font-weight:500;list-style:none;display:flex;justify-content:space-between;gap:20px}
    summary::-webkit-details-marker{display:none}
    summary:after{content:"+";font-weight:300;font-size:24px}
    details[open] summary:after{content:"–"}
    details p{color:var(--muted);max-width:850px;margin:12px 0 0}
    .final-cta{background:var(--rigu);color:#fff;text-align:center}
    .final-cta h2{max-width:800px;margin:0 auto 18px}
    .final-cta p{max-width:680px;margin:0 auto 28px;color:rgba(255,255,255,.78);font-size:18px}
    footer{padding:34px 0;background:#171614;color:rgba(255,255,255,.72);font-size:12px}
    .footer-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:36px}
    .footer-grid p{margin:0}
    .footer-grid a{color:#fff}
    .sticky-mobile{display:none}
    .success{display:none;padding:14px;border-radius:12px;background:#eef0eb;margin-top:14px;font-size:14px}
    .error{display:none;padding:14px;border-radius:12px;background:#fff1ee;margin-top:14px;font-size:14px;color:#842d1e}
    @media(max-width:860px){
      .shell{width:min(100% - 28px,var(--max))}
      .hero{min-height:720px}
      .hero-media:after{background:linear-gradient(0deg,rgba(20,19,18,.78) 0%,rgba(20,19,18,.3) 66%,rgba(20,19,18,.22) 100%)}
      .hero-content{padding:132px 0 64px}
      .section-head,.lead-wrap{grid-template-columns:1fr;gap:18px}
      .spec-grid{grid-template-columns:1fr 1fr}
      .spec:nth-child(2){border-right:0}.spec:nth-child(-n+2){border-bottom:1px solid var(--line)}
      .plan-grid,.gallery-grid{grid-template-columns:1fr}
      .photo.tall{min-height:500px}.photo{min-height:340px}
      .feature-grid{grid-template-columns:1fr}
      .lead-copy{position:static}
      .footer-grid{grid-template-columns:1fr}
    }
    @media(max-width:560px){
      section{padding:68px 0}
      .top-cta{display:none}
      .brand strong{font-size:20px}
      h1{font-size:48px}
      .hero-lede{font-size:18px}
      .hero-actions .btn{width:100%}
      .spec{padding:20px 14px}.spec b{font-size:20px}
      .plan{padding:22px}.plan-grid{gap:14px}
      .form-row,.choice-grid{grid-template-columns:1fr}
      .lead-card{padding:22px}
      .photo.tall{min-height:440px}.photo{min-height:290px}
      .sticky-mobile{display:flex;position:fixed;z-index:50;left:12px;right:12px;bottom:12px;gap:8px;padding:8px;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:999px;box-shadow:0 10px 30px rgba(0,0,0,.18);backdrop-filter:blur(12px)}
      .sticky-mobile .btn{min-height:44px;width:100%;background:var(--rigu);color:#fff;padding:0 14px;font-size:14px}
      footer{padding-bottom:90px}
    }

/* WordPress landing compatibility */
html { scroll-behavior: smooth; }
body.kuu-rigu-page { margin: 0 !important; padding: 0 !important; }
body.kuu-rigu-page #wpadminbar { z-index: 99999; }
.kuu-rigu-root { min-height: 100vh; }
.kuu-rigu-root .kuu-hp { position:absolute !important; left:-9999px !important; width:1px !important; height:1px !important; overflow:hidden !important; opacity:0 !important; pointer-events:none !important; }
.kuu-rigu-root .btn[disabled] { opacity:.65; cursor:wait; transform:none !important; }
.kuu-rigu-root .success,.kuu-rigu-root .error { scroll-margin-top: 24px; }
@media (max-width: 782px){ body.admin-bar.kuu-rigu-page .topbar{top:46px} }
@media (min-width: 783px){ body.admin-bar.kuu-rigu-page .topbar{top:32px} }
