
/* PATCO DECO — additional editorial pages and standalone pool / wine cellar sections */
.desktop-nav{gap:clamp(11px,1.28vw,22px)}
.desktop-nav a{font-size:10px}
.header-inner{gap:14px}
@media(max-width:1300px){.header-cta{display:none}}
@media(max-width:1160px){.desktop-nav{display:none}.mobile-menu-btn{display:flex}.header-cta{display:none}}
@media(max-width:1160px){.header-inner{height:74px}}
@media(max-width:700px){.header-inner{height:67px}}
.editorial-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:28px}
.editorial-tile{background:#ede9df;min-height:550px;display:flex;flex-direction:column;overflow:hidden;position:relative}
.editorial-tile-img{height:355px;overflow:hidden}
.editorial-tile img{height:100%;width:100%;object-fit:cover;transition:transform .5s}
.editorial-tile:hover img{transform:scale(1.035)}
.editorial-tile-text{padding:28px 31px 36px;flex:1}
.editorial-tile-text .eyebrow{margin-bottom:14px;font-size:9px}
.editorial-tile h3{font:400 clamp(27px,2.5vw,37px)/1.2 var(--serif);margin:0 0 9px}
.editorial-tile p{font-size:12px;color:#677169;line-height:1.85;max-width:480px;margin:0 0 16px}
.editorial-tile .text-link{margin-top:0}
.about-page-hero,.bespoke-page-hero{padding:94px 0 82px;background:#f0ede6}
.about-page-hero h1,.bespoke-page-hero h1{font:400 clamp(51px,5.65vw,83px)/1.13 var(--serif);letter-spacing:-2px;margin:0 0 27px;max-width:940px}
.about-page-hero h1 em,.bespoke-page-hero h1 em{color:#8a806d;font-weight:400}
.about-page-hero .lead,.bespoke-page-hero .lead{max-width:690px;color:#67716a;line-height:1.9;font-size:17px;margin:0}
.about-page-hero .eyebrow,.bespoke-page-hero .eyebrow{margin-bottom:23px}
.about-story-grid{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(0,1.1fr);gap:clamp(55px,8vw,128px);align-items:center}
.about-portrait{aspect-ratio:4/5;overflow:hidden;background:#d6d0c5;position:relative}
.about-portrait img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.about-portrait figcaption{position:absolute;bottom:0;left:0;right:0;color:#f4f1e8;background:linear-gradient(transparent,rgba(15,23,18,.68));padding:66px 24px 20px;font:600 11px var(--sans);letter-spacing:1.7px}
.about-story .section-title{margin-bottom:25px}
.about-story p:not(.eyebrow){font-size:14px;line-height:2;color:#606962;margin-bottom:16px}
.about-quote{background:#2f3932;color:#f8f4e9;padding:clamp(55px,7vw,110px) 0;text-align:center}
.about-quote p{max-width:810px;font:400 clamp(31px,3.4vw,52px)/1.4 var(--serif);margin:0 auto 18px}
.about-quote small{color:#babbb0;letter-spacing:3px;font-size:10px}
.experience-section{background:#efede8}
.experience-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px}
.experience-locations{padding:32px 0 20px;display:flex;flex-wrap:wrap;gap:12px}
.experience-locations span{padding:10px 17px;border:1px solid #cfccc2;font-size:11px;color:#4d594f}
.experience-section p:not(.eyebrow){color:#687269;line-height:1.9;max-width:600px}
.bespoke-cover{position:relative;overflow:hidden;height:min(68vw,660px);min-height:380px;background:#4c574f}
.bespoke-cover img{width:100%;height:100%;object-fit:cover;object-position:center 48%}
.bespoke-cover .image-ribbon{position:absolute;bottom:0;left:0;background:rgba(247,245,239,.94);padding:13px 22px;font-size:9px;letter-spacing:2px;color:#59665c}
.bespoke-content{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6.5vw,105px);align-items:start}
.bespoke-content .section-title{margin-bottom:28px}
.bespoke-content p{font-size:14px;color:#667169;line-height:2;margin:0 0 26px}
.bespoke-list{margin:25px 0 34px;padding:0;list-style:none}
.bespoke-list li{padding:15px 0;border-bottom:1px solid #d6d2c8;font-size:13px;color:#455047;display:flex;gap:22px}
.bespoke-list li span{font:italic 18px var(--serif);color:#aa967c}
.bespoke-side img{width:100%;height:440px;object-fit:cover;background:#ddd7cc}
.bespoke-side .photo-caption{font-size:10px;color:#73776d;letter-spacing:1px;margin-top:12px}
@media(max-width:800px){.about-story-grid,.experience-grid,.bespoke-content,.editorial-duo{grid-template-columns:1fr}.about-portrait{max-height:570px;max-width:470px;margin:auto}.editorial-tile{min-height:0}.editorial-tile-img{height:310px}.bespoke-cover{height:390px}.bespoke-side img{height:310px}.about-page-hero,.bespoke-page-hero{padding:69px 0 58px}.about-page-hero h1,.bespoke-page-hero h1{font-size:clamp(43px,10vw,65px)}.experience-grid{gap:5px}}
@media(max-width:440px){.editorial-tile-img{height:255px}.editorial-tile-text{padding:24px 22px 29px}.about-page-hero h1,.bespoke-page-hero h1{font-size:42px}.bespoke-cover{min-height:260px;height:295px}.about-portrait{max-height:470px}.bespoke-list li{font-size:12px}}

/* PATCO DECO — ajustements demandés : logo affirmé, photos prioritaires et texte discret */
/* En-tête : nom plus lisible sans tasser la navigation */
.header-inner{height:88px}
.brand{gap:12px}
.brand-mark,.brand-mark svg{width:54px;height:54px}
.brand-words strong{font-size:25px;letter-spacing:2.1px;line-height:1.05}
.brand-words small{font-size:7.8px;letter-spacing:1.6px;margin-top:7px}
/* Typographie & rythme global : préserver le confort sans écraser les visuels */
body{font-size:14px}
.section{padding:58px 0}
.section-title{font-size:clamp(34px,3.55vw,50px);line-height:1.18;letter-spacing:-1px}
.eyebrow{font-size:9px;margin-bottom:15px;letter-spacing:2px}
.section-head{gap:28px;margin-bottom:25px}
.section-head>p,.section-head-aside{font-size:12px;line-height:1.65}
.intro-text .section-title{margin-bottom:16px}
.intro-text p{font-size:13px;line-height:1.75;margin-bottom:13px}
.intro-text p.body-large{font-size:14px}
.intro-image-wrap{height:clamp(350px,35vw,480px)}
.service-card{min-height:265px;padding:23px 28px 28px}
.service-card h3{font-size:22px}
.service-card p{font-size:11.5px;line-height:1.7}
.service-icon{margin-bottom:14px}
.step h3{font-size:21px}
.statement-section{padding:64px 0}
.statement-inner>p{font-size:clamp(25px,2.8vw,39px)}
.approach-head{margin-bottom:38px}
.cta-section{padding:54px 0}
.cta-inner h2{font-size:clamp(31px,3.5vw,48px)}
/* Accueil : la couverture devient une bannière et les photos arrivent dès le début */
.hero{height:405px;min-height:405px}
.hero-copy{max-width:630px;padding:15px 0 46px}
.hero h1{font-size:clamp(38px,4.1vw,59px);line-height:1.12;letter-spacing:-1.2px;margin:16px 0 13px}
.hero-eyebrow{font-size:9px;letter-spacing:2px}
.hero-copy>p{font-size:12.5px;line-height:1.6;margin-bottom:20px;max-width:525px}
.hero-buttons{gap:9px}
.hero-buttons .btn{min-height:45px;padding:10px 15px;font-size:10px}
.hero-bottom{padding:11px var(--gutter)}
.projects-section{padding-top:39px;padding-bottom:62px}
.projects-section .section-head{margin-bottom:22px}
.projects-section .section-title{font-size:clamp(34px,3.3vw,47px)}
.projects-section .eyebrow{margin-bottom:10px}
.projects-section .section-head-aside p{margin-bottom:5px}
.featured-grid{grid-template-rows:repeat(2,234px);gap:14px}
.tile-label strong{font-size:24px}
.tile-label{bottom:22px;left:24px}
.tile-number{top:17px;left:20px}
.tile-arrow{bottom:21px;right:20px;width:34px;height:34px}
.trust-grid>div{min-height:75px;font-size:10px}
.trust-number{font-size:22px}
/* Galeries : le filtre est immédiatement visible, et chaque cliché s'agrandit seul */
.interior-page-hero{padding:43px 0 27px}
.interior-page-hero h1{font-size:clamp(36px,4.1vw,59px);line-height:1.15;letter-spacing:-1.25px;margin-bottom:15px}
.interior-page-hero .eyebrow{margin-bottom:10px}
.interior-hero-bottom>p{font-size:12px;line-height:1.65}
.interior-page-hero::after{font-size:240px}
.gallery-section{padding-top:30px}
.gallery-controls{margin-bottom:23px;padding-bottom:15px}
.gallery-grid{row-gap:28px}
.gallery-image{height:285px}
.gallery-info{padding-top:12px}
.gallery-info h3{font-size:19px}
.gallery-info p{font-size:10px}
.lightbox-caption{justify-content:center;text-align:center}
.lightbox-prev,.lightbox-next{display:none!important}
/* À propos : un portrait de dimension éditoriale, pas une photo qui remplit l'écran */
.about-page-hero,.bespoke-page-hero{padding:43px 0 35px}
.about-page-hero h1,.bespoke-page-hero h1{font-size:clamp(35px,3.9vw,55px);letter-spacing:-1px;line-height:1.13;margin-bottom:13px;max-width:920px}
.about-page-hero .lead,.bespoke-page-hero .lead{font-size:13px;line-height:1.65;max-width:620px}
.about-page-hero .eyebrow,.bespoke-page-hero .eyebrow{margin-bottom:11px}
.about-story-grid{grid-template-columns:minmax(240px,335px) minmax(0,1fr);gap:clamp(35px,5.5vw,80px);align-items:center}
.about-portrait{width:100%;max-width:335px;aspect-ratio:4/5}
.about-portrait img{object-position:center 33%}
.about-story p:not(.eyebrow){font-size:12.5px;line-height:1.75;margin-bottom:12px}
.about-story .section-title{margin-bottom:14px}
.about-quote{padding:50px 0}
.about-quote p{font-size:clamp(27px,2.7vw,37px)}
.experience-locations{padding-top:15px}
.bespoke-cover{height:min(55vw,520px)}
.bespoke-content p{font-size:12.5px;line-height:1.8}
.editorial-tile{min-height:445px}
.editorial-tile-img{height:270px}
.editorial-tile-text{padding:20px 24px 24px}
.editorial-tile h3{font-size:clamp(22px,2vw,29px)}
.editorial-tile p{font-size:11.5px;line-height:1.65}
@media(max-width:1160px){
 .header-inner{height:78px}
 .brand-mark,.brand-mark svg{width:50px;height:50px}
 .brand-words strong{font-size:23px}
}
@media(max-width:960px){
 .hero{height:405px;min-height:405px}
 .hero-copy{padding:18px 0 44px}
 .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:800px){
 .about-story-grid{grid-template-columns:1fr;gap:25px}
 .about-portrait{width:280px;max-width:70vw;max-height:none;margin:0 auto}
 .about-page-hero,.bespoke-page-hero{padding:38px 0 28px}
 .about-story .section-title{font-size:35px}
}
@media(max-width:700px){
 .header-inner{height:72px}
 .brand{gap:8px}
 .brand-mark,.brand-mark svg{width:43px;height:43px}
 .brand-words strong{font-size:20px;letter-spacing:1.2px}
 .brand-words small{font-size:6.6px;letter-spacing:1.1px;margin-top:6px}
 .section{padding:43px 0}
 .section-title{font-size:clamp(31px,7.7vw,41px)}
 .hero{height:auto;min-height:418px}
 .hero-content{padding:29px 0 80px}
 .hero-copy{padding:0}
 .hero h1{font-size:clamp(34px,8.3vw,44px);letter-spacing:-.65px;line-height:1.13;margin:13px 0 12px}
 .hero-copy>p{font-size:11.5px;line-height:1.55;margin-bottom:13px}
 .hero-eyebrow{font-size:7.5px;letter-spacing:1.3px;gap:9px}
 .hero-eyebrow .line{width:20px}
 .hero-buttons{gap:8px}
 .hero-buttons .btn{padding:9px 13px;min-height:39px;font-size:9.5px}
 .hero-bottom{padding:9px var(--gutter)}
 .projects-section{padding-top:27px;padding-bottom:42px}
 .projects-section .section-head{margin-bottom:18px}
 .projects-section .section-title{font-size:34px}
 .section-head-aside{margin-top:11px}
 .featured-grid{grid-template-columns:1fr;grid-template-rows:none;gap:11px}
 .project-tile,.project-tile-large{height:245px;grid-row:auto}
 .project-tile-large{height:280px}
 .tile-label strong{font-size:23px}
 .trust-grid>div{min-height:60px}
 .interior-page-hero{padding:35px 0 22px}
 .interior-page-hero h1{font-size:clamp(37px,9.3vw,46px);letter-spacing:-.8px;margin-bottom:9px}
 .interior-hero-bottom>p{font-size:11px}
 .interior-hero-bottom .page-number{margin-top:7px}
 .gallery-section{padding-top:16px}
 .gallery-controls{gap:8px;margin-bottom:17px;padding-bottom:12px}
 .filter-group{gap:6px}
 .filter{font-size:9px;padding:7px 10px}
 .gallery-grid{grid-template-columns:1fr;gap:22px}
 .gallery-image{height:295px}
 .gallery-info h3{font-size:19px}
 .about-page-hero h1,.bespoke-page-hero h1{font-size:clamp(36px,9vw,48px)}
 .about-page-hero .lead,.bespoke-page-hero .lead{font-size:12px}
 .about-portrait{width:245px;max-width:68vw}
 .about-story .section-title{font-size:34px}
 .about-story p:not(.eyebrow){font-size:12px;line-height:1.7}
 .editorial-tile-img{height:230px}
 .editorial-tile{min-height:0}
 .intro-image-wrap{height:345px}
 .statement-section{padding:48px 0}
 .statement-inner>p{font-size:26px}
 .cta-section{padding:47px 0}
 .cta-inner h2{font-size:35px}
 .lightbox-caption{padding:12px 24px}
}
@media(max-width:410px){
 .brand-words strong{font-size:19px}
 .brand-mark,.brand-mark svg{width:40px;height:40px}
 .header-actions{gap:3px}
 .language-switch{gap:2px}
 .section-title{font-size:30px}
 .hero h1{font-size:34px}
}

/* Finitions compactes : présentation des photos immédiatement sur petit écran */
@media (min-width:801px){
 .about-page-hero h1{font-size:clamp(37px,3.2vw,46px);max-width:1150px;line-height:1.18}
}
@media (max-width:700px){
 .projects-section .section-head-aside p{display:none}
 .projects-section .section-head-aside{margin-top:6px}
 .projects-section .section-head{margin-bottom:14px}
}

/* ================================================================
   PATCO DECO - Typographie plus discrète sur toutes les pages
   Demande : textes éditoriaux réduits de ~20 %, nom PATCO DECO
   agrandi. Ne change ni les photos ni la navigation fonctionnelle.
   ================================================================ */

/* Signature : PATCO DECO est volontairement PLUS GRAND. */
.header-inner{height:96px}
.brand{gap:13px}
.brand-mark,.brand-mark svg{width:63px;height:63px}
.brand-words strong{font-size:34px;line-height:1.04;letter-spacing:1.75px}
.brand-words small{font-size:8.5px;letter-spacing:1.55px;margin-top:7px}
.brand-words small .brand-credit{font-size:7px;letter-spacing:1.17px;margin-top:4px}
.footer-brand{font-size:35px}

/* Navigations et petits textes récurrents */
body{font-size:11.2px}
.announcement,.announcement a{font-size:8px}
.announcement a strong{font-size:9px}
.desktop-nav a{font-size:9px}
.language-switch button{font-size:8px}
.header-cta{font-size:9px}
.mobile-nav a{font-size:14.4px}
.mobile-nav .mobile-phone{font-size:11.2px}
.eyebrow{font-size:7.5px}
.hero-eyebrow{font-size:8px}
.hero-bottom,.hero-side{font-size:8px}
.btn{font-size:9px}
.text-link{font-size:9px}
.footer-intro p,.footer-col a{font-size:10px}
.footer-col strong{font-size:9px}
.footer-bottom{font-size:9px}

/* Titres et corps de texte - accueil et rubriques générales */
.hero h1{font-size:clamp(30px,3.28vw,47px)}
.hero-copy>p{font-size:10.5px}
.hero-buttons .btn{font-size:9px}
.section-title{font-size:clamp(27px,2.84vw,40px)}
.projects-section .section-title{font-size:clamp(27px,2.64vw,38px)}
.section-head>p,.section-head-aside{font-size:10.5px}
.intro-text p{font-size:11px}
.intro-text p.body-large{font-size:11.5px}
.intro-text p.eyebrow{font-size:8px}
.tile-label strong{font-size:19px}
.tile-label small,.tile-number{font-size:9px}
.editorial-tile h3{font-size:clamp(19px,1.7vw,25px)}
.editorial-tile p{font-size:10px}
.editorial-tile-text .eyebrow{font-size:8px}
.service-card h3{font-size:18px}
.service-card p{font-size:10px}
.service-index{font-size:9px}
.trust-grid>div{font-size:9px}
.trust-number{font-size:18px}
.statement-inner>p{font-size:clamp(22px,2.24vw,32px)}
.step h3{font-size:17px}
.step p{font-size:10px}
.approach-head>p{font-size:10.5px}
.cta-inner h2{font-size:clamp(26px,2.8vw,39px)}
.cta-inner p:not(.eyebrow){font-size:10.5px}

/* Page Réalisations */
.interior-page-hero h1{font-size:clamp(29px,3.28vw,47px)}
.interior-hero-bottom>p{font-size:10.5px}
.page-number{font-size:9px}
.filter{font-size:10px}
.gallery-count{font-size:10px}
.gallery-info h3{font-size:16px}
.gallery-info p{font-size:9px}
.gallery-nb{font-size:9px}
.gallery-tag{font-size:8px}
.lightbox-caption{font-size:10px}

/* Pages À propos / Piscines / Caves à vin */
.about-page-hero h1,.bespoke-page-hero h1{font-size:clamp(30px,2.56vw,39px)}
.about-page-hero .lead,.bespoke-page-hero .lead{font-size:11px}
.about-story p:not(.eyebrow){font-size:11px}
.about-quote p{font-size:clamp(22px,2.16vw,30px)}
.about-quote small{font-size:9px}
.about-portrait figcaption{font-size:9px}
.experience-section p:not(.eyebrow){font-size:11px}
.experience-locations span{font-size:9px}
.bespoke-content p{font-size:11px}
.bespoke-list li{font-size:11px}
.bespoke-side .photo-caption,.bespoke-cover .image-ribbon{font-size:9px}

/* Page Contact et pages d'information */
.contact-details .section-title{font-size:clamp(29px,3.12vw,45px)}
.contact-help{font-size:11px}
.contact-item small{font-size:9px}
.contact-item a{font-size:11.5px}
.contact-service-note{font-size:10px}
.contact-form-wrap h2{font-size:clamp(25px,2.4vw,35px)}
.contact-form-wrap>p{font-size:10.5px}
.form-field label{font-size:10px}
.form-field input,.form-field textarea,.form-field select{font-size:11px}
.consent-row{font-size:10px}
.form-note,.form-status{font-size:10px}
.map-section-head h2{font-size:clamp(23px,2.4vw,34px)}
.map-label{font-size:10px}
.map-label small{font-size:9px}
.legal-prose h2{font-size:24px}
.legal-prose p{font-size:11px}

/* Mobile : conserver la lisibilité et éviter de couper le nom. */
@media(max-width:1160px){
  .header-inner{height:87px}
  .brand-mark,.brand-mark svg{width:58px;height:58px}
  .brand-words strong{font-size:31px}
}
@media(max-width:800px){
  .about-story .section-title{font-size:28px}
}
@media(max-width:700px){
  .header-inner{height:77px}
  .brand{gap:8px}
  .brand-mark,.brand-mark svg{width:48px;height:48px}
  .brand-words strong{font-size:25px;letter-spacing:1.25px}
  .brand-words small{font-size:7px;letter-spacing:1.1px}
  .brand-words small .brand-credit{font-size:6px;letter-spacing:1px}
  .section-title{font-size:clamp(25px,6.15vw,33px)}
  .projects-section .section-title{font-size:27px}
  .hero h1{font-size:clamp(27px,6.64vw,35px)}
  .hero-copy>p{font-size:10px}
  .hero-eyebrow{font-size:7px}
  .hero-buttons .btn{font-size:9px}
  .tile-label strong{font-size:18px}
  .interior-page-hero h1{font-size:clamp(30px,7.45vw,37px)}
  .interior-hero-bottom>p{font-size:10.5px}
  .filter{font-size:9px}
  .gallery-info h3{font-size:15px}
  .about-page-hero h1,.bespoke-page-hero h1{font-size:clamp(29px,7.2vw,39px)}
  .about-page-hero .lead,.bespoke-page-hero .lead{font-size:11px}
  .about-story .section-title{font-size:27px}
  .about-story p:not(.eyebrow){font-size:10.5px}
  .editorial-tile h3{font-size:21px}
  .statement-inner>p{font-size:22px}
  .cta-inner h2{font-size:28px}
  .contact-details .section-title{font-size:33px}
  .contact-form-wrap h2{font-size:28px}
  .map-section-head h2{font-size:28px}
}
@media(max-width:410px){
  .brand-mark,.brand-mark svg{width:44px;height:44px}
  .brand-words strong{font-size:23px}
  .brand-words small{font-size:6.5px}
  .brand-words small .brand-credit{font-size:5.7px}
  .header-actions{gap:3px}
  .language-switch{gap:2px;margin-right:0}
}
@media(max-width:360px){
  .header-inner{gap:7px}
  .brand{gap:6px}
  .brand-mark,.brand-mark svg{width:36px;height:36px}
  .brand-words strong{font-size:20px;letter-spacing:.85px}
  .brand-words small{font-size:5.8px;letter-spacing:.8px}
  .brand-words small .brand-credit{font-size:5px;letter-spacing:.6px}
  .mobile-menu-btn{width:37px;height:37px}
}
