:root{
  --ink:#4d392f;
  --muted:#776457;
  --gold:#bd873f;
  --gold-deep:#94622d;
  --cream:#f9eee3;
  --cream-2:#fdf7f0;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:#f8ecdf}
body{font-family:"Palatino Linotype","Book Antiqua",Palatino,Georgia,serif;color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:hidden}
.page-shell{
  position:relative;min-height:100svh;overflow:hidden;display:flex;justify-content:center;
  background:
    radial-gradient(ellipse at 50% 20%,rgba(255,255,255,.82),rgba(255,250,245,.58) 42%,rgba(248,235,223,.20) 72%,rgba(244,225,211,.18) 100%),
    linear-gradient(180deg,#fbf4ed 0%,#f7e7d8 100%);
}
.ambient-lines{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.76;background:
  radial-gradient(1150px 640px at 48% -16%,transparent 54%,rgba(255,255,255,.62) 54.35%,transparent 54.8%),
  linear-gradient(154deg,transparent 30%,rgba(255,255,255,.45) 30.10%,transparent 30.38%),
  linear-gradient(17deg,transparent 57%,rgba(255,255,255,.36) 57.08%,transparent 57.35%);
}
.floor-scene{
  position:absolute;z-index:0;left:0;right:0;bottom:0;
  height:min(44.5svh,386px);
  background:url('/assets/approved-bottom-clean.png') center bottom/100% 100% no-repeat;
  pointer-events:none;
  opacity:.78;
  filter:saturate(.88);
}
.floor-scene::before{
  content:"";position:absolute;z-index:1;inset:-1px;
  background:linear-gradient(180deg,#f8ecdf 0%,rgba(248,236,223,.97) 14%,rgba(248,236,223,.82) 30%,rgba(248,236,223,.28) 50%,transparent 70%);
}
.hero{position:relative;z-index:3;width:min(92vw,690px);min-height:100svh;padding:20px 0 22px;display:flex;flex-direction:column;align-items:center;text-align:center}
.brand{display:block;width:clamp(335px,29vw,425px);height:auto;margin:4px auto -2px;pointer-events:none;user-select:none;filter:drop-shadow(0 4px 18px rgba(93,62,35,.025))}
.divider{display:flex;align-items:center;justify-content:center;gap:13px;margin:0 0 18px;color:#c28a40}.divider i{width:66px;height:1px;display:block;background:linear-gradient(90deg,transparent,#c18a43)}.divider i:last-child{background:linear-gradient(90deg,#c18a43,transparent)}.divider b{font:400 20px/1 Georgia,serif;color:#c58b3e}
h1{margin:0;max-width:675px;font:400 clamp(35px,2.65vw,46px)/1.08 "Palatino Linotype","Book Antiqua",Palatino,Georgia,serif;letter-spacing:-.024em;color:#4a342a;text-wrap:balance}h1 span{white-space:nowrap}
.lead{margin:17px 0 0;max-width:610px;font:400 clamp(18px,1.35vw,22px)/1.4 "Palatino Linotype","Book Antiqua",Palatino,Georgia,serif;color:rgba(77,57,47,.80);text-wrap:balance}.mobile-lead-break{display:none}
.keywords{margin:20px 0 18px;font:500 clamp(10.5px,.74vw,12px)/1.2 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:.31em;color:#6e5b4d}.keywords em{padding:0 .48em;font-style:normal;color:#bc8137;letter-spacing:0}
.form-slot{position:relative;width:min(100%,505px);height:146px;margin-top:0}
form{width:100%}
.email-control{position:relative;height:48px;display:flex;align-items:center;border:1px solid rgba(153,110,73,.34);border-radius:999px;background:rgba(255,251,247,.975);box-shadow:inset 0 1px 0 rgba(255,255,255,.99),0 9px 24px rgba(87,57,34,.035)}
.email-control input{width:100%;height:100%;padding:0 22px 0 54px;border:0;outline:0;border-radius:inherit;background:transparent;font:400 16px/1.2 "Palatino Linotype","Book Antiqua",Palatino,Georgia,serif;color:var(--ink);caret-color:var(--gold);appearance:none}.email-control input::placeholder{color:rgba(93,72,58,.55);opacity:1}.email-control:focus-within{border-color:rgba(171,118,55,.67);box-shadow:0 0 0 3px rgba(193,142,76,.07),inset 0 1px 0 rgba(255,255,255,.97)}
.email-control input:-webkit-autofill,.email-control input:-webkit-autofill:hover,.email-control input:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink);-webkit-box-shadow:0 0 0 1000px #fffaf5 inset;transition:background-color 9999s ease-out 0s}
.mail-icon{position:absolute;z-index:2;left:21px;width:20px;height:15px;border:2px solid #705847;border-radius:2px;opacity:.9}.mail-icon::before,.mail-icon::after{content:"";position:absolute;top:2px;width:58%;height:2px;background:#705847}.mail-icon::before{left:1px;transform:rotate(31deg);transform-origin:left center}.mail-icon::after{right:1px;transform:rotate(-31deg);transform-origin:right center}
button{position:relative;width:100%;height:53px;margin-top:8px;padding:0 24px;border:1px solid rgba(255,255,255,.96);outline:1px solid rgba(181,125,58,.90);border-radius:999px;background:linear-gradient(96deg,#c99349 0%,#b57c38 55%,#95642f 100%);color:#fffaf4;box-shadow:inset 0 1px 0 rgba(255,255,255,.26),0 10px 26px rgba(105,69,32,.10);cursor:pointer;font:400 17px/1.15 "Palatino Linotype","Book Antiqua",Palatino,Georgia,serif}button:hover{filter:brightness(1.018)}button:active{transform:translateY(1px)}button:disabled{cursor:wait;opacity:.72}.button-label{display:block;padding:0 38px}.button-arrow{position:absolute;right:25px;top:50%;transform:translateY(-53%);font-size:23px;line-height:1}
.consent-note{max-width:470px;margin:7px auto 0;text-align:center;font:400 8.7px/1.38 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:rgba(74,61,52,.56)}.consent-note a{color:#725337;text-underline-offset:2px}.status{min-height:14px;margin:3px auto 0;text-align:center;font:500 9.6px/1.3 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#934c30}
.success-card{position:absolute;inset:0;display:grid;place-content:center;padding:17px 26px;border:1px solid rgba(175,130,72,.28);border-radius:25px;text-align:center;background:rgba(255,250,245,.965);box-shadow:0 11px 32px rgba(91,60,35,.075),inset 0 1px 0 rgba(255,255,255,.94);backdrop-filter:blur(8px)}.success-card[hidden]{display:none}.success-star{color:#c28b3f;font-size:21px}.success-card h2{margin:5px 0 4px;font:400 24px/1.14 "Palatino Linotype","Book Antiqua",Palatino,Georgia,serif}.success-card p{margin:0 auto;max-width:430px;font:400 13.5px/1.4 "Palatino Linotype","Book Antiqua",Palatino,Georgia,serif;color:rgba(78,60,42,.76)}
.micro{position:absolute;z-index:4;font:500 8.8px/1.35 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:.27em;color:#715b4d}.micro-left{left:57px;top:29px;text-align:left}.micro-left span,.micro-bottom span{display:inline-block;width:21px;height:1px;background:#bc833d;margin:0 13px 5px 0}.micro-right{right:57px;top:31px}.micro-bottom{left:57px;bottom:25px;text-align:left}
.hp{position:absolute!important;left:-9999px!important;opacity:0!important}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Desktop/laptop: match the approved full-screen composition */
@media (min-width:900px){
  .page-shell{height:100svh;min-height:620px}
  .hero{justify-content:flex-start}
}
/* Keep the desktop hero inside the visible viewport. Netlify may append a
   visitor UI mount after <main>; containing the document prevents that mount
   from creating a few pixels of page scroll and clipping the bottom microcopy. */
@media (min-width:900px) and (min-height:620px){
  html,body{height:100%;overflow:hidden}
  .page-shell{height:100%;min-height:0}
  .hero{height:100%;min-height:0}
}
@media (min-width:900px) and (max-height:840px){
  .hero{width:min(89vw,650px);padding-top:9px;padding-bottom:12px}
  .brand{width:335px;margin-top:0}
  .divider{margin-bottom:11px}.divider i{width:55px}.divider b{font-size:17px}
  h1{font-size:37px;line-height:1.07}.lead{font-size:17.5px;margin-top:11px}.keywords{margin:14px 0 12px;font-size:10px}.form-slot{width:470px;height:133px}.email-control{height:44px}.email-control input{font-size:15px}button{height:49px;margin-top:7px;font-size:16px}.consent-note{font-size:7.8px;margin-top:5px}
  .floor-scene{height:min(43svh,340px)}
  .micro-left,.micro-right{top:22px}.micro-bottom{bottom:18px}
}

/* Desktop uses one continuous plate derived from the approved mockup. Keeping
   it as a single full-viewport layer prevents crop lines and preserves both
   floral edges and the complete right-hand arrangement at every laptop size. */
@media (min-width:900px){
  .page-shell{background:#f8eee6}
  .ambient-lines{display:none}
  .floor-scene{
    inset:0;width:100%;height:100%;
    background:url('/assets/desktop-background-approved-v12.png') center/100% 100% no-repeat;
    opacity:1;filter:none
  }
  .floor-scene::before{display:none}
}

/* Tablet */
@media (min-width:700px) and (max-width:899px){
  .page-shell{min-height:100svh;overflow-y:auto}.micro{display:none}.hero{width:min(92vw,620px);padding:16px 18px 26px}.brand{width:min(63vw,375px)}.divider{margin-bottom:15px}h1{font-size:39px}.lead{font-size:20px;margin-top:16px}.keywords{margin:19px 0 16px;font-size:10.5px}.form-slot{width:min(100%,500px)}
}

/* Phone: preserve the approved single-column phone composition */
@media (max-width:699px){
  .page-shell{min-height:100svh;overflow-y:auto;background:#f8eee6}
  .ambient-lines{display:none}.micro{display:none}
  .floor-scene{inset:0;width:100%;height:100%;background:url('/assets/mobile-background-approved-v19.png') center/100% 100% no-repeat;opacity:1;filter:none}
  .floor-scene::before{display:none}
  .hero{width:100%;max-width:420px;min-height:100svh;padding:15px 20px calc(24px + env(safe-area-inset-bottom));justify-content:flex-start}
  .brand{width:min(86vw,315px);margin-top:0}
  .divider{gap:9px;margin:0 0 42px}.divider i{width:48px}.divider b{font-size:17px}
  h1{max-width:355px;font-size:clamp(29px,7.8vw,33px);line-height:1.09;letter-spacing:-.022em}h1 span{white-space:normal}
  .lead{width:100%;max-width:360px;margin-top:28px;font-size:16px;line-height:1.42}.desktop-break{display:none}.mobile-lead-break{display:block}
  .keywords{margin:23px 0 21px;font-size:10px;letter-spacing:.27em;white-space:nowrap}
  .form-slot{width:100%;height:151px;margin-top:clamp(68px,10svh,88px)}.email-control{height:50px}.email-control input{font-size:15.5px;padding-left:52px}.mail-icon{left:19px;width:20px;height:15px}button{height:53px;margin-top:8px;font-size:16px}.button-label{padding:0 30px}.button-arrow{right:21px;font-size:22px}.consent-note{max-width:320px;font-size:8.2px;line-height:1.4;margin-top:7px}.success-card{border-radius:24px}.success-card h2{font-size:23px}.success-card p{font-size:13.5px}
}
@media (max-width:390px){.hero{padding-left:17px;padding-right:17px}.brand{width:300px}h1{font-size:29px}.lead{font-size:15.5px}.keywords{font-size:9.4px;letter-spacing:.23em}.email-control{height:49px}button{height:52px;font-size:15.5px}.consent-note{font-size:7.8px}}
@media (max-width:699px) and (max-height:760px){.hero{padding-top:10px}.brand{width:275px}.divider{margin-bottom:38px}h1{font-size:27px;line-height:1.1}.lead{font-size:15.5px;line-height:1.42;margin-top:25px}.keywords{margin:20px 0 16px;font-size:9px}.email-control{height:46px}button{height:49px}.form-slot{height:139px;margin-top:73px}}

/* Netlify may inject this visitor badge after the document has loaded. Keep
   the approved, distraction-free composition unchanged on every domain. */
#nl-badge-frame{display:none!important;visibility:hidden!important;width:0!important;height:0!important;pointer-events:none!important}
