/*
Theme Name: Solignac Tapissier
Theme URI: https://solignac-tapissier.com/
Author: Smart Grafik
Description: Thème WordPress sur mesure pour Solignac Tapissier — page d'accueil one-page, responsive et sans dépendance à un builder.
Version: 1.0.0
Text Domain: solignac
*/

:root{
  --ink:#171717;
  --paper:#f7f4ef;
  --white:#fff;
  --accent:#7d5a68;
  --muted:#6f6a66;
  --line:#dfd8d0;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--white);line-height:1.65}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
.container{width:min(var(--max),calc(100% - 40px));margin:auto}
.section{padding:88px 0}
.eyebrow{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);font-weight:700}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:500;line-height:1.08;margin:0 0 18px}
h1{font-size:clamp(3rem,7vw,6.7rem)}
h2{font-size:clamp(2.2rem,4.2vw,4rem)}
h3{font-size:1.45rem}
p{margin:0 0 18px}
.btn{display:inline-block;padding:13px 22px;border:1px solid var(--ink);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;transition:.2s}
.btn:hover{background:var(--ink);color:#fff}
.btn.light{border-color:#fff;color:#fff}
.btn.light:hover{background:#fff;color:var(--ink)}
.site-header{position:absolute;z-index:30;top:0;left:0;width:100%;color:#fff}
.header-inner{height:94px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand img{width:215px;max-height:76px;object-fit:contain;filter:brightness(0) invert(1)}
.nav{display:flex;gap:27px;font-size:.77rem;letter-spacing:.11em;text-transform:uppercase}
.nav a{opacity:.92}
.nav a:hover{opacity:.65}
.hero{min-height:88vh;position:relative;display:flex;align-items:flex-end;color:#fff;background:
linear-gradient(90deg,rgba(0,0,0,.66),rgba(0,0,0,.16)),
url('/wp-content/uploads/2023/01/Tapissier-3-scaled.jpg') center/cover no-repeat}
.hero-content{padding:180px 0 90px;max-width:850px}
.hero h1 span{display:block;font-size:.25em;letter-spacing:.18em;text-transform:uppercase;font-family:Arial,Helvetica,sans-serif;font-weight:500;margin-bottom:16px}
.hero-sub{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.25rem,2.3vw,2rem);margin-bottom:30px}
.intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}
.intro-card{position:sticky;top:40px}
.intro-card img{width:100%;aspect-ratio:4/3;object-fit:cover}
.intro-copy{font-size:1.08rem}
.intro-copy .lead{font-family:Georgia,"Times New Roman",serif;font-size:1.45rem;line-height:1.5}
.services{background:var(--paper)}
.section-head{max-width:800px;margin-bottom:45px}
.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.service-card{background:#fff;border:1px solid var(--line);padding:18px}
.service-card img{aspect-ratio:1/1;object-fit:cover;margin-bottom:18px}
.service-card p{font-size:.9rem;color:var(--muted)}
.more-services{margin-top:30px;max-width:950px;color:var(--muted)}
.split{display:grid;grid-template-columns:1fr 1fr;min-height:620px}
.split-media img{width:100%;height:100%;object-fit:cover}
.split-copy{display:flex;align-items:center;padding:70px; background:#171717;color:#fff}
.split-copy .inner{max-width:520px}
.split.reverse .split-copy{order:1;background:#f1ece5;color:var(--ink)}
.split.reverse .split-media{order:2}
.gallery{background:#fff}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.gallery-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}
.contact{background:var(--paper)}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
.contact-meta{font-size:1.05rem}
.contact-meta strong{display:block;margin-top:22px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-grid .full{grid-column:1/-1}
input,textarea{width:100%;border:0;border-bottom:1px solid #aaa;background:transparent;padding:13px 4px;font:inherit}
textarea{min-height:120px;resize:vertical}
button{cursor:pointer;background:var(--ink);color:#fff;border:0;padding:14px 23px;text-transform:uppercase;letter-spacing:.08em}
.notice{padding:12px 15px;margin-bottom:20px;border:1px solid var(--line);background:#fff}
.site-footer{background:#111;color:#ddd;padding:34px 0;font-size:.84rem}
.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
@media(max-width:900px){
  .nav{display:none}
  .intro-grid,.contact-grid,.split{grid-template-columns:1fr}
  .intro-card{position:static}
  .services-grid{grid-template-columns:repeat(2,1fr)}
  .split-copy{padding:55px 30px}
  .split.reverse .split-copy,.split.reverse .split-media{order:initial}
  .gallery-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:560px){
  .section{padding:62px 0}
  .container{width:min(var(--max),calc(100% - 28px))}
  .services-grid,.gallery-grid,.form-grid{grid-template-columns:1fr}
  .form-grid .full{grid-column:auto}
  .brand img{width:175px}
  .hero{min-height:78vh}
}
