/*
Theme Name: Seuil
Theme URI: https://seuil.ca
Author: Vous
Author URI: https://seuil.ca
Description: Un thème sur mesure pour la page d'attente de Seuil, basé sur le fichier HTML original.
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: seuil
*/

:root{
  --cream:#F4F1EB;
  --cream-2:#E8E3D8;
  --ink:#141414;
  --ink-soft:#5C5C5C;
  --clay:#CC5A3F;
  --clay-deep:#9E422C;
  --moss:#617351;
  --line:#D9D4C7;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--cream);
  color:var(--ink);
  font-family:'Work Sans', sans-serif;
  font-size:16px;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{
  font-family:'Fraunces', serif;
  font-weight:600;
  margin:0;
  letter-spacing:-0.01em;
}
.label{
  font-family:'Space Mono', monospace;
  font-size:12px;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--clay-deep);
}
a{color:inherit;}
.wrap{max-width:1080px;margin:0 auto;padding:0 28px;}

header{
  position:sticky; top:0; z-index:20;
  background:rgba(244, 241, 235, 0.92);
  backdrop-filter:blur(6px);
  border-bottom:1px solid var(--line);
}
.nav{display:flex;align-items:center;justify-content:space-between;padding:18px 28px;max-width:1080px;margin:0 auto;}
.logo{font-family:'Fraunces',serif;font-weight:700;font-size:22px;letter-spacing:-0.02em;}
.logo em{
  font-style:italic;color:var(--clay);
  position:relative; padding:0 3px;
  border:1px solid var(--ink); border-radius:1px;
}
.logo em::after{
  content:''; position:absolute; right:2px; top:48%;
  width:3px; height:3px; border-radius:50%; background:var(--ink);
}
.nav-links{display:flex;gap:28px;font-size:14px;}
.nav-links a{text-decoration:none;color:var(--ink-soft);border-bottom:1px solid transparent;padding-bottom:2px;transition:border-color .2s;}
.nav-links a:hover{border-color:var(--clay);color:var(--ink);}
.nav-cta{
  font-family:'Work Sans',sans-serif;font-weight:600;font-size:14px;
  background:var(--ink);color:var(--cream);
  padding:9px 18px;border-radius:2px;text-decoration:none;
  display:inline-block;
}
@media (max-width:720px){ .nav-links{display:none;} }

.hero{padding:88px 0 60px;}
.hero-grid{display:grid;grid-template-columns:1.05fr 0.95fr;gap:56px;align-items:center;}
@media (max-width:860px){ .hero-grid{grid-template-columns:1fr;} }
.eyebrow{margin-bottom:18px;}
.hero h1{font-size:clamp(34px,5vw,54px);line-height:1.06;}
.hero h1 em{font-style:italic;color:var(--clay);}
.hero p.sub{margin-top:22px;font-size:18px;color:var(--ink-soft);max-width:480px;}
.hero-ctas{margin-top:32px;display:flex;gap:14px;flex-wrap:wrap;}
.btn-primary{
  background:var(--clay);color:var(--cream);
  font-family:'Work Sans',sans-serif;font-weight:600;font-size:15px;
  padding:14px 26px;border-radius:2px;text-decoration:none;
  border:1px solid var(--clay);
  transition:background .2s, color .2s;
}
.btn-primary:hover{background:var(--clay-deep);border-color:var(--clay-deep);}
.btn-ghost{
  font-family:'Work Sans',sans-serif;font-weight:600;font-size:15px;
  padding:14px 20px;text-decoration:none;color:var(--ink);
  border:1px solid var(--ink);border-radius:2px;
  transition:background .2s;
}
.btn-ghost:hover{background:var(--ink);color:var(--cream);}

.plan-frame{
  border:1px solid var(--line);
  background:var(--cream-2);
  padding:18px;
  position:relative;
}
.plan-frame .tag{
  position:absolute; top:12px; right:16px;
  font-family:'Space Mono',monospace; font-size:11px; color:var(--ink-soft); letter-spacing:.08em;
}
.plan-frame svg{width:100%; height:auto; display:block;}

section{padding:76px 0;}
.divider{border-top:1px solid var(--line);}
.section-head{max-width:620px; margin-bottom:44px;}
.section-head .label{margin-bottom:14px;display:block;}
.section-head h2{font-size:clamp(26px,3.4vw,36px); line-height:1.15;}
.section-head p{margin-top:16px;color:var(--ink-soft);font-size:16.5px;}

.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:8px;}
@media (max-width:780px){ .approach-grid{grid-template-columns:1fr;} }
.approach-item{border-top:1px solid var(--ink); padding-top:16px;}
.approach-item .num{font-family:'Space Mono',monospace;font-size:13px;color:var(--clay-deep);}
.approach-item h3{font-size:19px;margin-top:10px;font-weight:600;}
.approach-item p{margin-top:10px;color:var(--ink-soft);font-size:15px;}

.features{background:var(--ink); color:var(--cream); padding:80px 0;}
.features .label{color:var(--clay);}
.features .section-head p{color:var(--cream-2);}
.room-list{margin-top:12px; border-top:1px solid rgba(255,255,255,0.15);}
.room{
  display:grid; grid-template-columns:60px 220px 1fr;
  gap:24px; padding:22px 0; border-bottom:1px solid rgba(255,255,255,0.15);
  align-items:start;
}
@media (max-width:720px){ .room{grid-template-columns:44px 1fr; } .room .room-desc{grid-column:2 / 3;} }
.room .room-num{font-family:'Space Mono',monospace; color:var(--clay); font-size:15px;}
.room .room-name{font-family:'Fraunces',serif; font-size:19px; font-weight:600;}
.room .room-desc{color:var(--cream-2); font-size:15px;}
.room.highlight .room-name{color:var(--clay);}
.room.highlight .room-desc{color:var(--cream);}

.cta-section{background:var(--cream-2);}
.cta-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;}
@media (max-width:820px){ .cta-grid{grid-template-columns:1fr;} }
.cta-grid h2{font-size:clamp(26px,3.4vw,34px); line-height:1.15;}
.cta-grid p{margin-top:16px;color:var(--ink-soft);font-size:16px;}
form{border:1px solid var(--ink); padding:28px; background:var(--cream);}
.field{margin-bottom:18px;}
.field label{display:block; font-family:'Space Mono',monospace; font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--ink-soft); margin-bottom:6px;}
.field input, .field select, .field textarea{
  width:100%; padding:11px 12px; border:1px solid var(--line); background:var(--cream);
  font-family:'Work Sans',sans-serif; font-size:15px; color:var(--ink); border-radius:0;
}
.field input:focus, .field select:focus, .field textarea:focus{outline:2px solid var(--clay); outline-offset:1px;}
.field textarea{resize:vertical; min-height:70px;}
.row-2{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
@media (max-width:480px){ .row-2{grid-template-columns:1fr;} }
.submit-btn{width:100%; margin-top:6px; border:none; cursor:pointer;}
.form-note{margin-top:14px; font-size:13px; color:var(--ink-soft);}
#thanks{display:none; padding:28px; border:1px solid var(--moss); background:var(--cream-2);}
#thanks h3{font-size:20px;}
#thanks p{margin-top:8px; color:var(--ink-soft); font-size:15px;}

footer{padding:44px 0; border-top:1px solid var(--line);}
.footer-grid{display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px;}
footer .logo{font-size:18px;}
footer .foot-meta{font-size:13px; color:var(--ink-soft); font-family:'Space Mono',monospace;}
