/* ===== EASYLIFE — shared stylesheet ===== */
:root{
  --ink:#0f0d0b;--ink-2:#16130f;--ink-soft:#1d1915;
  --paper:#f4efe7;--paper-2:#e9e1d4;
  --brass:#c2974e;--brass-light:#e3c489;--brass-deep:#9a7536;
  --line:rgba(194,151,78,.22);--line-soft:rgba(244,239,231,.12);
  --txt-dim:rgba(244,239,231,.62);--txt-dimmer:rgba(244,239,231,.42);
  --serif:'Cormorant Garamond',Georgia,serif;
  --sans:'Outfit',-apple-system,sans-serif;
  --ease:cubic-bezier(.22,.61,.36,1);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--ink);color:var(--paper);font-family:var(--sans);font-weight:300;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}
::selection{background:var(--brass);color:var(--ink)}
body::after{content:"";position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.wrap{max-width:1240px;margin:0 auto;padding:0 32px}
.narrow{max-width:880px}
a{color:inherit}
img{max-width:100%;display:block}
.eyebrow{font-size:11px;letter-spacing:.42em;text-transform:uppercase;color:var(--brass);font-weight:500;display:flex;align-items:center;gap:14px}
.eyebrow::before{content:"";width:34px;height:1px;background:var(--brass);opacity:.6}
.eyebrow.center{justify-content:center}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;line-height:1.05;letter-spacing:-.01em}
.it{font-style:italic;color:var(--brass-light)}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;padding:22px 40px;transition:all .5s var(--ease);background:rgba(15,13,11,.6);backdrop-filter:blur(6px)}
nav.scrolled{padding:14px 40px;background:rgba(15,13,11,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line-soft)}
.brand{display:flex;flex-direction:column;line-height:1;text-decoration:none;color:var(--paper)}
.brand .name{font-family:var(--serif);font-size:27px;letter-spacing:.02em}
.brand .name b{color:var(--brass);font-weight:400}
.brand .sub{font-size:8.5px;letter-spacing:.34em;text-transform:uppercase;color:var(--txt-dim);margin-top:3px}
.nav-links{display:flex;gap:34px;align-items:center}
.nav-links a{color:var(--paper);text-decoration:none;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:300;position:relative;transition:color .3s}
.nav-links a::after{content:"";position:absolute;left:0;bottom:-5px;width:0;height:1px;background:var(--brass);transition:width .35s var(--ease)}
.nav-links a:hover::after,.nav-links a.active::after{width:100%}
.nav-links a.active{color:var(--brass)}
.nav-cta{border:1px solid var(--brass);padding:11px 22px !important;border-radius:2px;color:var(--brass) !important;transition:all .35s var(--ease) !important}
.nav-cta::after{display:none}
.nav-cta:hover{background:var(--brass);color:var(--ink) !important}
.burger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:6px}
.burger span{width:26px;height:1.5px;background:var(--paper);transition:.3s}

/* buttons */
.btn{font-family:var(--sans);font-size:13px;letter-spacing:.16em;text-transform:uppercase;padding:16px 34px;border-radius:2px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:11px;transition:all .4s var(--ease);border:1px solid var(--brass)}
.btn-primary{background:var(--brass);color:var(--ink);font-weight:500}
.btn-primary:hover{background:var(--brass-light);border-color:var(--brass-light);transform:translateY(-2px)}
.btn-ghost{background:transparent;color:var(--paper);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--brass);color:var(--brass)}
.btn .ar{transition:transform .4s var(--ease)}
.btn:hover .ar{transform:translateX(5px)}

/* reveal */
.reveal{opacity:0;transform:translateY(34px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
.reveal.in{opacity:1;transform:none}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}.d4{transition-delay:.4s}.d5{transition-delay:.5s}

/* page hero (interior) */
.phero{position:relative;padding:190px 0 90px;overflow:hidden;background:radial-gradient(110% 80% at 80% 10%,rgba(194,151,78,.15),transparent 55%),linear-gradient(160deg,#0f0d0b,#16130f 60%,#0c0a08)}
.phero-grid{position:absolute;inset:0;opacity:.4;background-image:linear-gradient(var(--line-soft) 1px,transparent 1px),linear-gradient(90deg,var(--line-soft) 1px,transparent 1px);background-size:80px 80px;-webkit-mask-image:radial-gradient(circle at 75% 30%,black,transparent 70%);mask-image:radial-gradient(circle at 75% 30%,black,transparent 70%)}
.crumbs{position:relative;z-index:2;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--txt-dimmer);margin-bottom:26px}
.crumbs a{color:var(--txt-dim);text-decoration:none}
.crumbs a:hover{color:var(--brass)}
.crumbs span{color:var(--brass)}
.phero h1{position:relative;z-index:2;font-size:clamp(40px,6vw,82px);max-width:900px;margin-top:18px}
.phero .lead{position:relative;z-index:2;color:var(--txt-dim);font-size:clamp(16px,1.5vw,19px);max-width:600px;margin-top:26px}

/* sections */
section{position:relative}
.section-pad{padding:110px 0}
.sec-head{max-width:700px;margin-bottom:64px}
.sec-head h2{font-size:clamp(32px,4.2vw,58px);margin-top:20px}
.sec-head p{color:var(--txt-dim);font-size:17px;margin-top:22px;max-width:580px}

/* prose */
.prose p{color:var(--txt-dim);font-size:16.5px;margin-bottom:22px;max-width:760px}
.prose h2{font-size:clamp(28px,3.6vw,44px);margin:54px 0 22px}
.prose h3{font-size:25px;margin:38px 0 14px;color:var(--paper)}
.prose ul{list-style:none;margin:22px 0;max-width:760px}
.prose li{position:relative;padding:12px 0 12px 26px;border-top:1px solid var(--line-soft);color:var(--txt-dim);font-size:15.5px}
.prose li::before{content:"";position:absolute;left:0;top:20px;width:7px;height:7px;background:var(--brass);border-radius:50%}
.prose strong{color:var(--paper);font-weight:500}

/* feature grid */
.fgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line-soft);border:1px solid var(--line-soft)}
.fgrid.two{grid-template-columns:repeat(2,1fr)}
.fcard{background:var(--ink);padding:44px 38px;position:relative;transition:background .5s}
.fcard:hover{background:var(--ink-soft)}
.fcard .ico{width:42px;height:42px;margin-bottom:22px}
.fcard .ico svg{width:100%;height:100%;fill:none;stroke:var(--brass);stroke-width:1.1}
.fcard h3{font-size:24px;margin-bottom:12px}
.fcard p{color:var(--txt-dim);font-size:14.5px}

/* photo slot */
.photo-slot{border:1px dashed var(--line);border-radius:4px;display:flex;align-items:center;justify-content:center;color:var(--txt-dimmer);font-size:12px;letter-spacing:.18em;text-transform:uppercase;min-height:300px;background:repeating-linear-gradient(45deg,transparent,transparent 12px,rgba(194,151,78,.03) 12px,rgba(194,151,78,.03) 24px);text-align:center;padding:20px}

/* cards list (other solutions / areas) */
.links-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.lcard{display:block;text-decoration:none;background:var(--ink-2);border:1px solid var(--line-soft);border-radius:4px;padding:32px 30px;transition:all .4s var(--ease)}
.lcard:hover{border-color:var(--line);transform:translateY(-4px)}
.lcard .k{font-family:var(--serif);font-size:15px;color:var(--brass);letter-spacing:.1em}
.lcard h3{font-size:22px;margin:14px 0 10px;color:var(--paper)}
.lcard p{color:var(--txt-dim);font-size:14px}
.lcard .go{margin-top:18px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass)}

/* FAQ */
.faq{max-width:820px}
.faq details{border-top:1px solid var(--line-soft);padding:6px 0}
.faq details[open]{padding-bottom:14px}
.faq summary{cursor:pointer;list-style:none;padding:22px 0;font-family:var(--serif);font-size:22px;color:var(--paper);display:flex;justify-content:space-between;align-items:center;gap:20px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--brass);font-size:26px;transition:transform .3s;font-family:var(--sans);font-weight:200}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq p{color:var(--txt-dim);font-size:15.5px;padding-right:40px}

/* CTA band */
.cta-band{background:radial-gradient(100% 120% at 80% 0%,rgba(194,151,78,.18),transparent 55%),var(--ink-2);text-align:center;border-top:1px solid var(--line-soft);padding:100px 0}
.cta-band h2{font-size:clamp(34px,4.6vw,64px)}
.cta-band p{color:var(--txt-dim);max-width:500px;margin:24px auto 40px;font-size:17px}
.cta-actions{display:flex;gap:18px;justify-content:center;flex-wrap:wrap}

/* FORM */
.form-section{padding:120px 0}
.form-wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}
.form-aside h2{font-size:clamp(30px,3.8vw,48px)}
.form-aside p{color:var(--txt-dim);margin-top:20px;font-size:16px}
.form-aside .contact-line{margin-top:34px;border-top:1px solid var(--line-soft);padding-top:24px}
.form-aside .contact-line a,.form-aside .contact-line span{display:block;color:var(--txt-dim);text-decoration:none;font-size:15px;padding:6px 0}
.form-aside .contact-line a:hover{color:var(--brass)}
.form-aside .contact-line .lbl{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--brass);margin-top:16px}
form .row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.field{margin-bottom:22px}
.field label{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass-light);margin-bottom:9px}
.field label .req{color:var(--brass)}
.field input,.field select,.field textarea{width:100%;background:var(--ink-2);border:1px solid var(--line-soft);border-radius:3px;padding:14px 16px;color:var(--paper);font-family:var(--sans);font-size:15px;font-weight:300;transition:border-color .3s}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--brass)}
.field textarea{resize:vertical;min-height:130px}
.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23c2974e' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}
.field.check{display:flex;gap:12px;align-items:flex-start}
.field.check input{width:auto;margin-top:4px}
.field.check label{text-transform:none;letter-spacing:0;font-size:13px;color:var(--txt-dim);margin:0}
.field.check label a{color:var(--brass)}
.err{display:block;color:#e0846a;font-size:12px;margin-top:6px;min-height:14px}
.form-msg{padding:18px 22px;border-radius:3px;margin-bottom:24px;font-size:15px;display:none}
.form-msg.ok{display:block;background:rgba(194,151,78,.12);border:1px solid var(--brass);color:var(--brass-light)}
.form-msg.bad{display:block;background:rgba(224,132,106,.1);border:1px solid #e0846a;color:#e0846a}
button[type=submit]{width:100%;justify-content:center;border:none;font-size:14px}

/* FOOTER */
footer{background:var(--ink-2);border-top:1px solid var(--line-soft);padding:70px 0 38px}
.foot-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px;padding-bottom:50px;border-bottom:1px solid var(--line-soft)}
.foot-brand .name{font-family:var(--serif);font-size:30px;color:var(--paper)}
.foot-brand .name b{color:var(--brass);font-weight:400}
.foot-brand .slo{font-style:italic;font-family:var(--serif);color:var(--brass-light);font-size:18px;margin-top:8px}
.foot-brand .div{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--txt-dimmer);margin-top:20px}
.foot-col h4{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--brass);margin-bottom:20px;font-family:var(--sans);font-weight:500}
.foot-col a,.foot-col p{display:block;color:var(--txt-dim);text-decoration:none;font-size:14px;padding:6px 0;transition:color .3s}
.foot-col a:hover{color:var(--brass)}
.foot-bot{display:flex;justify-content:space-between;align-items:center;padding-top:30px;flex-wrap:wrap;gap:14px}
.foot-bot p{font-size:12px;color:var(--txt-dimmer);letter-spacing:.05em}

@media(max-width:900px){
  .nav-links{position:fixed;inset:0;background:rgba(12,10,8,.97);backdrop-filter:blur(20px);flex-direction:column;justify-content:center;gap:28px;transform:translateX(100%);transition:transform .5s var(--ease);z-index:999}
  .nav-links.open{transform:none}
  .nav-links a{font-size:19px}
  .burger{display:flex;z-index:1001}
  .fgrid,.fgrid.two{grid-template-columns:1fr}
  .links-grid{grid-template-columns:1fr}
  .form-wrap{grid-template-columns:1fr;gap:44px}
  .foot-top{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .wrap{padding:0 22px}
  nav{padding:16px 22px}
  .section-pad,.form-section{padding:70px 0}
  form .row{grid-template-columns:1fr}
  .foot-top{grid-template-columns:1fr}
}
