:root{
  --page:#f5ecdf;
  --cream:#fffaf3;
  --cream-2:#fbf4ea;
  --paper:rgba(255,250,243,.78);
  --green:#2d3d2a;
  --green-2:#415239;
  --copper:#b17442;
  --copper-2:#d1a27b;
  --text:#171814;
  --muted:#56554d;
  --line:rgba(177,116,66,.22);
  --shadow:0 22px 60px rgba(66,45,28,.08);
  --serif: Georgia, "Times New Roman", serif;
  --sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --script:"Segoe Script","Brush Script MT",cursive;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:
    radial-gradient(circle at 0 0,rgba(177,116,66,.10),transparent 28vw),
    radial-gradient(circle at 100% 4%,rgba(47,61,42,.08),transparent 30vw),
    var(--page);
  color:var(--text);
  font-family:var(--sans);
  line-height:1.65;
  overflow-x:hidden;
}

.page-frame{
  width:min(1320px,calc(100% - 48px));
  margin:24px auto;
  overflow:hidden;
  background:
    radial-gradient(circle at 90% 8%,rgba(255,255,255,.74),transparent 24%),
    linear-gradient(180deg,#fffbf6 0%,#fbf3e8 68%,#f6eadc 100%);
  border:1px solid rgba(177,116,66,.12);
  border-radius:34px;
  box-shadow:0 34px 110px rgba(55,39,25,.16);
}

.site-shell{
  width:min(1148px,calc(100% - 80px));
  margin:0 auto;
}

.site-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  padding:40px 0 52px;
}

.brand{
  display:flex;
  align-items:center;
  gap:20px;
  color:inherit;
  text-decoration:none;
}

.brand-icon{
  width:92px;
  height:92px;
  color:var(--copper);
  display:inline-flex;
  flex:0 0 auto;
}

.brand-icon svg{width:100%;height:100%}

.brand-text strong{
  display:block;
  font-family:var(--serif);
  font-size:clamp(2.4rem,3.2vw,3.55rem);
  font-weight:500;
  line-height:1;
  color:#141511;
  letter-spacing:-.035em;
}

.brand-text small{
  display:block;
  max-width:340px;
  margin-top:10px;
  color:#333830;
  font-size:1.04rem;
  line-height:1.35;
}

.btn{
  appearance:none;
  border:0;
  border-radius:999px;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-height:52px;
  padding:0 28px;
  font-size:.92rem;
  font-weight:800;
  letter-spacing:.02em;
  line-height:1;
  text-decoration:none;
  text-transform:uppercase;
  white-space:nowrap;
  transition:transform .28s ease,box-shadow .28s ease,background .28s ease,border-color .28s ease,color .28s ease;
}

.btn:hover{transform:translateY(-2px)}
.btn-primary{
  background:linear-gradient(135deg,var(--green),var(--green-2));
  color:#fff;
  box-shadow:0 14px 34px rgba(45,61,42,.18);
}
.btn-primary:hover{box-shadow:0 18px 44px rgba(45,61,42,.27)}
.btn-outline{
  background:rgba(255,250,243,.7);
  border:1px solid rgba(177,116,66,.54);
  color:#191a16;
}
.btn-footer{
  min-height:42px;
  padding:0 22px;
  border:1px solid rgba(255,255,255,.44);
  background:transparent;
  color:#fff;
  font-size:.78rem;
}

/* Icons */
.icon{
  width:20px;
  height:20px;
  display:inline-block;
  background:currentColor;
  mask-position:center;
  mask-repeat:no-repeat;
  mask-size:contain;
  -webkit-mask-position:center;
  -webkit-mask-repeat:no-repeat;
  -webkit-mask-size:contain;
}
.icon-bell,.icon-bell-card{
  mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15 17H9m9-2V10a6 6 0 0 0-12 0v5l-2 2h16l-2-2ZM10 21h4'/%3E%3C/svg%3E");
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15 17H9m9-2V10a6 6 0 0 0-12 0v5l-2 2h16l-2-2ZM10 21h4'/%3E%3C/svg%3E");
}
.icon-mail,.icon-mail-card{
  mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 6h16v12H4zM4 7l8 6 8-6'/%3E%3C/svg%3E");
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 6h16v12H4zM4 7l8 6 8-6'/%3E%3C/svg%3E");
}
.icon-instagram{
  mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='4' y='4' width='16' height='16' rx='4'/%3E%3Ccircle cx='12' cy='12' r='3.5'/%3E%3Cpath d='M17.1 7.1h.01'/%3E%3C/svg%3E");
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='4' y='4' width='16' height='16' rx='4'/%3E%3Ccircle cx='12' cy='12' r='3.5'/%3E%3Cpath d='M17.1 7.1h.01'/%3E%3C/svg%3E");
}
.icon-linkedin{
  mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='black' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.8 8.8H3.7V20h3.1V8.8ZM5.3 7.3a1.8 1.8 0 1 0 0-3.6 1.8 1.8 0 0 0 0 3.6ZM20.3 20v-6.1c0-3-1.6-4.4-3.8-4.4-1.7 0-2.5.9-2.9 1.6V8.8h-3V20h3v-5.5c0-1.5.3-2.9 2.1-2.9s1.8 1.7 1.8 3V20h2.8Z'/%3E%3C/svg%3E");
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='black' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.8 8.8H3.7V20h3.1V8.8ZM5.3 7.3a1.8 1.8 0 1 0 0-3.6 1.8 1.8 0 0 0 0 3.6ZM20.3 20v-6.1c0-3-1.6-4.4-3.8-4.4-1.7 0-2.5.9-2.9 1.6V8.8h-3V20h3v-5.5c0-1.5.3-2.9 2.1-2.9s1.8 1.7 1.8 3V20h2.8Z'/%3E%3C/svg%3E");
}

.hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px,.92fr);
  gap:80px;
  align-items:center;
  padding:8px 0 72px;
}

.hero h1{
  margin:0;
  font-family:var(--serif);
  font-size:clamp(4.7rem,7.4vw,7.6rem);
  font-weight:500;
  line-height:.93;
  letter-spacing:-.06em;
  color:#151611;
}

.hero h1 em{
  color:var(--copper);
  font-style:italic;
  font-weight:400;
  letter-spacing:-.04em;
}

.ornament{
  display:block;
  position:relative;
  width:62px;
  height:15px;
  margin:30px 0 32px;
  background:radial-gradient(circle at center,var(--copper) 0 3px,transparent 4px);
}
.ornament:before,.ornament:after{
  content:"";
  position:absolute;
  top:50%;
  width:25px;
  height:1px;
  background:var(--copper);
}
.ornament:before{left:0}
.ornament:after{right:0}

.hero p{
  max-width:650px;
  margin:0 0 16px;
  color:#2a2b27;
  font-size:1.05rem;
  line-height:1.76;
}

.hero p strong{color:var(--copper)}
.script{
  margin-top:18px!important;
  color:var(--copper)!important;
  font-family:var(--script);
  font-size:clamp(2rem,3.2vw,3.05rem)!important;
  line-height:1.15!important;
}

.actions{
  display:flex;
  flex-wrap:wrap;
  gap:20px;
  align-items:center;
  margin-top:34px;
}

.hero-illustration{
  position:relative;
  min-height:420px;
  color:var(--copper);
}

.compass-large{
  position:absolute;
  top:34px;
  right:66px;
  width:330px;
  height:330px;
}
.compass-large svg{width:100%;height:100%}

.branch{
  position:absolute;
  color:#9ca796;
}
.branch-a{
  width:410px;
  right:0;
  bottom:28px;
}
.branch-b{
  width:220px;
  right:18px;
  top:145px;
  color:var(--copper);
  opacity:.82;
}
.dot{
  position:absolute;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--copper);
}
.dot-1{right:28px;top:168px}
.dot-2{right:95px;bottom:126px}
.dot-3{right:282px;bottom:148px}

.panel{
  border:1px solid rgba(177,116,66,.20);
  border-radius:24px;
  background:var(--paper);
  box-shadow:var(--shadow);
}

.reassurance{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin:0 0 68px;
  padding:48px 46px;
}

.reassurance article{
  position:relative;
  padding:0 42px;
  text-align:center;
}

.reassurance article:not(:last-child):after{
  content:"";
  position:absolute;
  top:12px;
  right:0;
  bottom:12px;
  width:1px;
  background:var(--line);
}

.round-icon,.card-icon{
  width:70px;
  height:70px;
  margin:0 auto 20px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#f1e4d5;
  color:var(--copper);
}
.round-icon:before,.card-icon:before{
  content:"";
  width:34px;
  height:34px;
  display:block;
  background:currentColor;
  mask-position:center;
  mask-repeat:no-repeat;
  mask-size:contain;
  -webkit-mask-position:center;
  -webkit-mask-repeat:no-repeat;
  -webkit-mask-size:contain;
}
.icon-gift:before{mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 11h16v10H4zM3 7h18v4H3zM12 7v14M12 7s-4.5.1-4.5-2.4C7.5 3.4 8.4 3 9.2 3 11 3 12 7 12 7Zm0 0s4.5.1 4.5-2.4C16.5 3.4 15.6 3 14.8 3 13 3 12 7 12 7Z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 11h16v10H4zM3 7h18v4H3zM12 7v14M12 7s-4.5.1-4.5-2.4C7.5 3.4 8.4 3 9.2 3 11 3 12 7 12 7Zm0 0s4.5.1 4.5-2.4C16.5 3.4 15.6 3 14.8 3 13 3 12 7 12 7Z'/%3E%3C/svg%3E")}
.icon-globe:before{mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3c3 3 3 15 0 18M12 3c-3 3-3 15 0 18'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3c3 3 3 15 0 18M12 3c-3 3-3 15 0 18'/%3E%3C/svg%3E")}
.icon-heart:before{mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.8 8.6c0 5-8.8 10.4-8.8 10.4S3.2 13.6 3.2 8.6A4.6 4.6 0 0 1 12 6.7a4.6 4.6 0 0 1 8.8 1.9Z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.8 8.6c0 5-8.8 10.4-8.8 10.4S3.2 13.6 3.2 8.6A4.6 4.6 0 0 1 12 6.7a4.6 4.6 0 0 1 8.8 1.9Z'/%3E%3C/svg%3E")}
.icon-compass-card:before{mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.65' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m15.8 8.2-2.1 5.5-5.5 2.1 2.1-5.5 5.5-2.1Z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.65' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m15.8 8.2-2.1 5.5-5.5 2.1 2.1-5.5 5.5-2.1Z'/%3E%3C/svg%3E")}
.icon-mail-card:before{mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 6h16v12H4zM4 7l8 6 8-6'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 6h16v12H4zM4 7l8 6 8-6'/%3E%3C/svg%3E")}
.icon-bell-card:before{mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15 17H9m9-2V10a6 6 0 0 0-12 0v5l-2 2h16l-2-2ZM10 21h4'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15 17H9m9-2V10a6 6 0 0 0-12 0v5l-2 2h16l-2-2ZM10 21h4'/%3E%3C/svg%3E")}

.reassurance h2,.info-card h3,.thanks h2{
  font-family:var(--serif);
  font-weight:500;
  line-height:1.15;
  letter-spacing:-.025em;
}
.reassurance h2{margin:0 0 18px;font-size:clamp(1.55rem,1.8vw,2.05rem)}
.reassurance p{margin:0 auto;max-width:300px;color:var(--muted);font-size:.98rem;line-height:1.68}

.section-title{text-align:center;margin:42px 0 24px}
.section-title h2{
  margin:0;
  font-family:var(--serif);
  font-size:clamp(2.8rem,4vw,3.95rem);
  font-weight:500;
  line-height:1;
  letter-spacing:-.045em;
}
.section-title .ornament{margin:14px auto 0}

.cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:28px;
  padding-bottom:46px;
}

.info-card{
  min-height:285px;
  display:flex;
  flex-direction:column;
  padding:34px 38px 30px;
  border:1px solid rgba(177,116,66,.20);
  border-radius:22px;
  background:rgba(255,250,243,.72);
  box-shadow:0 16px 42px rgba(66,45,28,.06);
}

.info-card .info-card-title { min-height:62px; display: flex; align-items: center; }

.info-card .card-icon{
  margin:0 0 26px;
  width:64px;
  height:64px;
}
.info-card-content{flex:1; justify-content: space-evenly; display: flex; flex-direction: column;}
.info-card h3{margin:0 0 18px;font-size:clamp(1.55rem,2vw,2.1rem)}
.info-card p{margin:0;color:var(--muted);font-size:.98rem;line-height:1.64}
.card-action{
  margin-top:28px;
  align-self:flex-start;
  color:var(--copper);
  font-size:.92rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
  display: flex;
  width: 100%;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
.card-action span { font-size: 1.5em; }
.text-link{
  padding:0;
  border:0;
  background:transparent;
  cursor:pointer;
}
.disabled-link{opacity:.72}

.thanks{
  min-height:144px;
  display:grid;
  /*grid-template-columns:170px 1fr 170px;*/
  align-items:center;
  margin:0 0 44px;
  padding:28px 34px;
  text-align:center;
}
.thanks .leaf{width:120px;height:88px;color:var(--copper);opacity:.82}
.thanks .left{justify-self:start}
.thanks .right{justify-self:end;transform:scaleX(-1)}
.thanks h2{margin:0 0 10px;font-size:clamp(1.8rem,2.2vw,2.35rem)}
.thanks p{margin:0;font-family:var(--script);font-size:clamp(1.25rem,2.35vw,2.3rem);line-height:1.15;color:#292c27}

.site-footer{
  background:linear-gradient(135deg,#253923,#2f402b);
  color:#fff;
  padding:36px 0 18px;
}
.footer-inner{
  width:min(1148px,calc(100% - 80px));
  margin:0 auto;
  display:grid;
  grid-template-columns:1.1fr auto 1.1fr;
  align-items:center;
  gap:42px;
}
.footer-brand .brand-icon{width:70px;height:70px}
.footer-brand .brand-text strong{font-size:2rem;color:#fff}
.footer-brand .brand-text small{font-size:.84rem;color:rgba(255,255,255,.72);max-width:265px}
.socials{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:24px;
  padding:0 56px;
  border-left:1px solid rgba(255,255,255,.25);
  border-right:1px solid rgba(255,255,255,.25);
}
.socials a{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  color:#fff;
  text-decoration:none;
  opacity:.92;
  transition:opacity .25s ease,transform .25s ease;
}
.socials a:hover{opacity:1;transform:translateY(-2px)}
.socials .icon{width:34px;height:34px}
.footer-contact{
  justify-self:end;
  display:flex;
  align-items:center;
  gap:28px;
}
.footer-contact p{margin:0;color:rgba(255,255,255,.78);font-size:.92rem;line-height:1.45}
.footer-contact strong{color:#fff}
.copyright{
  width:min(1148px,calc(100% - 80px));
  margin:18px auto 0;
  text-align:center;
  color:rgba(255,255,255,.72);
  font-size:.82rem;
}

/* Modal */
.modal{position:fixed;inset:0;z-index:60;display:none}
.modal.is-open{display:block}
.modal-backdrop{position:absolute;inset:0;background:rgba(20,22,17,.55);backdrop-filter:blur(6px)}
.modal-card{
  position:relative;
  z-index:1;
  width:min(560px,calc(100% - 32px));
  max-height:calc(100vh - 32px);
  overflow:auto;
  margin:16px auto;
  top:50%;
  transform:translateY(-50%);
  border-radius:28px;
  background:#fff8ef;
  padding:34px;
  box-shadow:0 26px 90px rgba(0,0,0,.22);
}
.modal-close{
  position:absolute;top:14px;right:18px;
  border:0;background:transparent;
  color:var(--green);
  cursor:pointer;
  font-size:2rem;
}
.modal-card h2{
  margin:0 32px 10px 0;
  font-family:var(--serif);
  font-size:2.4rem;
  font-weight:500;
  line-height:1.1;
}
.modal-card p{margin:0 0 22px;color:var(--muted)}
.form{display:grid;gap:16px}
.form label{display:grid;gap:7px;color:#2f312d;font-weight:700}
.form label span{font-weight:500;color:var(--muted)}
.form input,.form textarea{
  width:100%;
  border:1px solid rgba(177,116,66,.24);
  border-radius:16px;
  background:#fff;
  padding:13px 15px;
  color:var(--text);
  font:inherit;
}
.form input:focus,.form textarea:focus{outline:2px solid rgba(177,116,66,.24);border-color:rgba(177,116,66,.5)}
.checkbox{grid-template-columns:auto 1fr!important;align-items:start;font-size:.92rem;font-weight:500!important;line-height:1.35}
.checkbox input{width:auto;margin-top:4px}
.hp-field{position:absolute;left:-9999px;opacity:0}
.form-feedback{min-height:22px;margin:0!important;font-weight:700}
.form-feedback.success,.form-feedback.is-success{color:#2f6b3c}
.form-feedback.error,.form-feedback.is-error{color:#9d3229}

.reveal{opacity:0;transform:translateY(18px);transition:opacity .8s ease,transform .8s ease}
.reveal.is-visible{opacity:1;transform:none}

@media (max-width: 1180px){
  .page-frame{width:calc(100% - 24px);margin:12px auto;border-radius:24px}
  .site-shell,.footer-inner,.copyright{width:min(900px,calc(100% - 48px))}
  .site-header{padding:30px 0 42px}
  .brand-icon{width:70px;height:70px}
  .brand-text strong{font-size:2.55rem}
  .brand-text small{font-size:.94rem}
  .hero{grid-template-columns:1fr .78fr;gap:36px}
  .hero h1{font-size:clamp(4.1rem,8.6vw,5.8rem)}
  .hero-illustration{min-height:350px}
  .compass-large{width:260px;height:260px;right:20px}
  .branch-a{width:330px}
  .reassurance{padding:38px 24px}
  .reassurance article{padding:0 26px}
  .cards{gap:22px}
  .info-card{padding:30px 28px}
}

@media (max-width: 860px){
  .site-shell,.footer-inner,.copyright{width:calc(100% - 32px)}
  .site-header{align-items:flex-start;padding:24px 0 26px}
  .site-header > .btn{display:none}
  .brand-icon{width:56px;height:56px}
  .brand-text strong{font-size:2rem}
  .brand-text small{font-size:.78rem;max-width:240px}
  .hero{display:flex;flex-direction:column;gap:18px;padding-bottom:44px}
  .hero h1{font-size:clamp(3.85rem,15vw,5.4rem)}
  .hero p{font-size:.98rem}
  .script{font-size:1.25rem!important}
  .actions{display:grid;grid-template-columns:1fr;gap:12px}
  .btn{width:100%;min-height:50px;padding:0 20px;font-size:.8rem}
  .hero-illustration{width:100%;min-height:320px}
  .compass-large{top:10px;right:50%;transform:translateX(50%);width:240px;height:240px}
  .branch-a{left:50%;right:auto;bottom:18px;transform:translateX(-50%);width:340px;max-width:100%}
  .branch-b{right:12%;top:112px;width:160px}
  .reassurance{grid-template-columns:1fr;gap:28px;padding:32px 24px}
  .reassurance article{padding:0}
  .reassurance article:not(:last-child){padding-bottom:26px;border-bottom:1px solid var(--line)}
  .reassurance article:not(:last-child):after{display:none}
  .round-icon{width:60px;height:60px;margin-bottom:14px}
  .round-icon:before{width:29px;height:29px}
  .section-title{margin-top:36px}
  .section-title h2{font-size:3rem}
  .cards{grid-template-columns:1fr;padding-bottom:34px}
  .info-card{min-height:auto}
  .thanks{grid-template-columns:1fr;padding:30px 22px}
  .thanks .leaf{display:none}
  .footer-inner{grid-template-columns:1fr;text-align:center;gap:24px}
  .footer-brand{justify-content:center}
  .socials{border:0;padding:0}
  .footer-contact{justify-self:center;flex-direction:column;gap:14px}
  .footer-contact .btn{width:auto}
}

@media (max-width: 520px){
  .page-frame{width:100%;margin:0;border-radius:0;border-left:0;border-right:0}
  .site-shell,.footer-inner,.copyright{width:calc(100% - 28px)}
  .hero h1{font-size:clamp(3.35rem,16vw,3.45rem)}
  .hero-illustration{min-height:285px}
  .compass-large{width:210px;height:210px}
  .branch-a{width:300px}
  .info-card{padding:28px 24px}
  .modal-card{padding:28px 20px}
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .reveal{opacity:1;transform:none}
}


/* --- V7 : rapprochement strict de la maquette validée --- */
@media (min-width:701px){
  body{
    background:
      radial-gradient(circle at 0 0,rgba(177,116,66,.08),transparent 28vw),
      radial-gradient(circle at 100% 4%,rgba(47,61,42,.06),transparent 30vw),
      #f4ecdf;
  }
  .page-frame{
    width:min(1024px,calc(100% - 42px));
    margin:18px auto;
    border-radius:22px;
  }
  .site-shell,.footer-inner,.copyright{
    width:min(910px,calc(100% - 72px));
  }
  .site-header{
    padding:28px 0 54px;
  }
  .brand-icon{width:78px;height:78px;}
  .brand-text strong{font-size:2.65rem;letter-spacing:-.04em;}
  .brand-text small{font-size:.96rem;max-width:315px;margin-top:8px;}
  .site-header>.btn{min-height:48px;padding:0 26px;font-size:.86rem;}
  .hero{
    grid-template-columns:52.5% 47.5%;
    gap:22px;
    align-items:center;
    padding:0 0 62px;
  }
  .hero h1{
    font-size:clamp(4.15rem,6.15vw,4.5rem);
    line-height:.94;
    letter-spacing:-.064em;
    max-width:510px;
  }
  .hero .ornament{margin:24px 0 28px;}
  .hero p{font-size:.98rem;line-height:1.7;max-width:470px;margin-bottom:14px;}
  .script{font-size: clamp(1.5rem,2.15vw,1rem) !important;line-height:1.16!important;margin-top:17px!important;}
  .actions{display:flex!important;grid-template-columns:none!important;flex-wrap:nowrap;gap:18px;margin-top:28px;}
  .actions .btn{width:auto;min-height:50px;padding:0 25px;font-size:.84rem;}
  .actions .btn-outline{min-width:170px;}
  .hero-illustration{min-height:390px;}
  .compass-large{width:282px;height:282px;top:44px;right:32px;}
  .branch-a{width:380px;right:-8px;bottom:16px;}
  .branch-b{width:190px;right:18px;top:150px;}
  .dot-1{right:6px;top:170px}.dot-2{right:72px;bottom:108px}.dot-3{right:260px;bottom:130px}
  .reassurance{margin-top:0;padding:43px 34px 42px;border-radius:18px;}
  .reassurance article{padding:0 32px;}
  .round-icon{width:64px;height:64px;margin-bottom:17px;}
  .round-icon:before{width:31px;height:31px;}
  .reassurance h2{font-size: 1.1rem;line-height:1.16;margin-bottom:16px;}
  .reassurance p{font-size:.83rem;line-height:1.62;max-width:260px;}
  .section-title{margin:40px 0 24px;}
  .section-title h2{font-size:3.15rem;}
  .cards{gap:24px;padding-bottom:38px;}
  .info-card{min-height:230px;padding:28px 30px 25px;border-radius:16px;}
  .info-card .card-icon{width:56px;height:56px;margin:0 0 19px;}
  .info-card .card-icon:before{width:28px;height:28px;}
  .info-card h3{font-size:1.25rem;line-height:1.14;margin-bottom:14px;}
  .info-card p{font-size:.83rem;line-height:1.55;}
  .card-action{margin-top:24px;font-size:.82rem;}
  .thanks{min-height:122px;margin-bottom:0;padding:24px 34px;border-radius:16px;
    /*grid-template-columns:150px 1fr 150px;*/
  }
  .thanks .leaf{width:108px;height:78px;}
  .thanks h2{font-size:1.82rem;margin-bottom:14px;}
  .thanks p{font-size: 1.15rem;line-height:1.05;}
  .site-footer{margin-top:34px;padding:28px 0 14px;}
  .footer-brand .brand-icon{width:62px;height:62px;}
  .footer-brand .brand-text strong{font-size:1.75rem;}
  .footer-brand .brand-text small{font-size:.72rem;max-width:220px;}
  .socials{gap:24px;padding:0 44px;}
  .socials a{width:42px;height:42px}.socials .icon{width:32px;height:32px;}
  .footer-contact{gap:22px;}
  .footer-contact p{font-size:.8rem;}
  .btn-footer{min-height:38px;font-size:.72rem;padding:0 18px;}
  .copyright{font-size:.75rem;margin-top:12px;}
}

@media (min-width:701px) and (max-width:930px){
  .page-frame{width:min(1024px,calc(100% - 28px));}
  .site-shell,.footer-inner,.copyright{width:calc(100% - 68px);}
  .hero{grid-template-columns:53% 47%;gap:10px;}
  .hero h1{font-size:clamp(3.7rem,7vw,4.3rem);}
  .hero p{font-size:.86rem;max-width:390px;}
  .script{font-size:2.1rem!important;}
  .actions{gap:12px;}
  .actions .btn{padding:0 18px;font-size:.68rem;min-height:40px;}
  .actions .btn-outline{min-width:130px;}
  .hero-illustration{min-height:330px;}
  .compass-large{width:224px;height:224px;top:45px;right:10px;}
  .branch-a{width:300px;right:-8px;bottom:22px;}
  .branch-b{width:142px;right:6px;top:135px;}
  .reassurance{padding:34px 22px;}
  .reassurance article{padding:0 22px;}
  .reassurance h2{font-size:1.36rem;}
  .reassurance p{font-size:.72rem;}
  .cards{gap:18px;}
  .info-card{padding:24px 22px;min-height:218px;}
  .info-card h3{font-size:1.28rem;}
  .info-card p{font-size:.74rem;}
  .thanks h2{font-size:1.45rem;}.thanks p{font-size:1.55rem;}
}

@media (max-width:700px){
  .page-frame{width:100%;margin:0;border-radius:0;border:0;}
  .site-header{padding:22px 0 26px;}
  .hero{display:flex;flex-direction:column;gap:18px;padding-bottom:38px;}
  .actions{display:grid;grid-template-columns:1fr;}
}
