/*
Theme Name: Camille — Nuances
Version: 1.0.0
Description: Le site de Camille, modifiable avec l’éditeur de blocs WordPress.
Requires at least: 6.6
Requires PHP: 8.0
Text Domain: camille
*/
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;500;600&display=swap');
:root{--paper:#f7f3ea;--ink:#34271f;--muted:#75685c;--gold:#a68a58;--border:#d9cebc;--cream:#eae2d3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.75 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}img{display:block;width:100%;object-fit:cover}h1,h2,p,figure{margin:0}h1,h2,.brand,.signature{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400}h1{font-size:clamp(65px,7.8vw,126px);line-height:.94;letter-spacing:-4px;margin:30px 0}h2{font-size:clamp(42px,4.5vw,68px);line-height:1.04;letter-spacing:-1.7px}h2 em,h1 em{font-weight:400;color:#8c704b}p{color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:2.1px;font-weight:600;color:var(--muted);margin-bottom:22px}.preview-banner{background:#e5d9c2;text-align:center;font-size:10px;letter-spacing:1px;padding:7px 16px}.site-header{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:25px 5.5%;gap:25px;border-bottom:1px solid var(--border)}.brand{font-size:38px;line-height:.9;text-align:center}.brand span{display:block;font-family:'DM Sans',sans-serif;font-size:8px;letter-spacing:2.7px;margin-top:12px}.site-header nav{display:flex;gap:27px;font-size:12px}.site-header nav a:hover,.text-link:hover{color:var(--gold)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:15px 24px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);font-size:12px;letter-spacing:.3px;transition:background .2s}.button:hover{background:#574333}.button.small{padding:12px 18px;font-size:11px}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1fr 1fr;min-height:660px;padding:48px 5.5% 58px;gap:5%}.hero-copy{align-self:center;padding:20px 0}.hero .eyebrow{font-size:9px}.intro{font-size:14px;line-height:1.95;margin:27px 0}.hero-foot{display:flex;align-items:center;gap:16px;margin-top:55px;font-size:8px;letter-spacing:1.3px;color:var(--muted)}.line{width:45px;height:1px;background:var(--gold)}.hero-visual{position:relative;margin:0 15px 10px 0;border:1px solid var(--gold);padding:10px}.hero-visual>img{height:100%;max-height:630px;min-height:530px}.photo-label{position:absolute;bottom:23px;left:23px;background:var(--paper);padding:10px 16px;font:italic 19px 'Cormorant Garamond',serif}.seal{position:absolute;right:-33px;top:36px;background:var(--ink);color:var(--cream);width:94px;height:94px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;font:30px 'Cormorant Garamond',serif;outline:1px solid var(--gold);outline-offset:-6px}.seal small{font:6px 'DM Sans',sans-serif;letter-spacing:1px;margin-top:5px}.ribbon{display:flex;justify-content:center;gap:6%;padding:23px 20px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);font-family:'Cormorant Garamond',serif;font-size:22px}.ribbon b{font-size:12px;color:var(--gold);align-self:center}.section{max-width:1240px;margin:auto;padding:90px 55px}.about{display:grid;grid-template-columns:.85fr 1fr;align-items:center;gap:12%;padding-top:110px;padding-bottom:110px}.portrait-frame{padding:12px;border:1px solid var(--border);position:relative}.portrait-frame img{height:470px;object-position:center 30%}.about p:not(.eyebrow){margin-top:23px;max-width:420px;font-size:14px}.text-link{display:inline-block;border-bottom:1px solid var(--gold);padding-bottom:5px;font-size:12px;margin-top:23px}.signature{display:block;font-style:italic;font-size:42px;color:var(--gold);margin-top:20px}.services-section{border-top:1px solid var(--border)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:40px}.section-heading>p{max-width:330px;font-size:13px}.service-filters{display:flex;gap:10px;flex-wrap:wrap;margin:36px 0 15px}.service-filters button{border:1px solid var(--border);background:transparent;border-radius:30px;padding:8px 18px;color:var(--ink);font-size:11px}.service-filters .active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.catalog-status{font-size:11px;margin-bottom:22px}.service-list{display:grid;grid-template-columns:1fr 1fr;column-gap:55px}.service-item{border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;padding:20px 0;gap:20px}.service-item h3{font-family:'Cormorant Garamond',serif;font-size:25px;line-height:1.15;font-weight:500;margin:0 0 8px}.service-item p{font-size:10px;letter-spacing:.6px}.service-item button{background:transparent;border:1px solid var(--border);border-radius:50%;width:38px;height:38px;flex-shrink:0;color:var(--ink)}.service-item button:hover{background:var(--cream)}.work-section{background:#ede6da;padding-bottom:75px}.work-section .section{padding-bottom:0}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;max-width:1130px;margin:0 auto;padding:0 25px}.gallery img{height:400px}.gallery figcaption{padding:15px 0 0;font-size:10px;text-transform:uppercase;letter-spacing:1.5px}.gallery figure:nth-child(2){margin-top:45px}.testimonials{text-align:center}.review-placeholder{max-width:620px;margin:35px auto 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:20px 20px 35px}.review-placeholder>span{font:70px/.8 'Cormorant Garamond',serif;color:var(--gold)}.review-placeholder p{font:italic 25px 'Cormorant Garamond',serif}.review-placeholder small{display:block;font-size:11px;color:var(--muted);margin-top:14px}.booking-section{background:var(--ink);max-width:none;padding:90px max(5.5%,calc((100vw - 1130px)/2));color:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:9%}.booking-section .eyebrow,.booking-section p{color:#cfc2af}.booking-section h2 em{color:#c6ab7c}.booking-intro>p:not(.eyebrow){margin-top:26px;font-size:14px;max-width:400px}.booking-intro .booking-note{font-size:11px!important;border-left:1px solid var(--gold);padding-left:15px}.booking-panel{background:var(--paper);color:var(--ink);padding:30px}.panel-title{display:flex;gap:15px;align-items:center;border-bottom:1px solid var(--border);padding-bottom:22px;margin-bottom:20px}.panel-title strong{font-size:13px;font-weight:500}.panel-title small{display:block;font-size:11px;color:var(--muted)}.monogram{font:25px 'Cormorant Garamond',serif;border:1px solid var(--gold);border-radius:50%;padding:9px}.booking-panel label{display:block;font-size:11px;margin:18px 0 7px}.booking-panel input,.booking-panel select{background:transparent;border:1px solid var(--border);width:100%;padding:12px;color:var(--ink);font-size:12px;border-radius:0;min-width:0}.booking-panel .button{width:100%;margin-top:20px}.booking-panel #availability-status{font-size:12px;margin-top:18px}.booking-panel #slots{max-height:360px;overflow:auto}.slot-day{margin-top:20px;border-top:1px solid var(--border);padding-top:12px}.slot-day h3{font-size:12px;text-transform:capitalize;margin:0 0 10px}.slot-time{display:inline-block;border:1px solid var(--border);padding:5px 9px;margin:0 6px 6px 0;font-size:11px}.visit{text-align:center}.visit>p:not(.eyebrow){margin-top:20px}footer{border-top:1px solid var(--border);padding:35px 5.5%;display:flex;justify-content:space-between;align-items:center;gap:25px}footer p,footer small{font-size:10px}footer .brand{font-size:30px}footer .brand span{font-size:6px}.skip{position:absolute;left:10px;top:-70px;padding:12px;background:white;z-index:5}.skip:focus{top:10px}:focus-visible{outline:3px solid #aa7840;outline-offset:4px}[hidden]{display:none!important}
@media(min-width:1500px){.booking-section{padding-left:calc((100vw - 1130px)/2);padding-right:calc((100vw - 1130px)/2)}}
@media(max-width:900px){.site-header nav{gap:15px}.hero{min-height:0;gap:6%;padding-top:35px}.hero-visual>img{min-height:440px}.hero-foot{margin-top:35px}.section{padding:70px 30px}.about{gap:8%}.portrait-frame img{height:390px}.gallery img{height:310px}.booking-section{padding:70px 30px;gap:5%}.booking-panel{padding:22px}.service-list{column-gap:30px}}
@media(max-width:640px){.site-header{padding:22px 22px;flex-wrap:wrap;gap:22px}.brand{font-size:33px}.site-header nav{order:3;width:100%;justify-content:space-between;font-size:11px;gap:10px}.button.small{font-size:10px;padding:10px 12px;gap:12px}.hero{grid-template-columns:1fr;padding:30px 25px 45px;gap:25px}.hero-copy{padding:10px 0}.hero h1{font-size:77px;letter-spacing:-3px;margin:20px 0}.intro{font-size:13px}.hero-foot{margin-top:30px}.hero-visual{margin:0 12px 0 0;height:470px}.hero-visual>img{min-height:0;max-height:none;height:100%}.seal{right:-23px;top:25px;width:80px;height:80px}.ribbon{gap:13px;font-size:14px;padding:17px 10px}.ribbon b{font-size:8px}.section{padding:65px 25px}.about{grid-template-columns:1fr;gap:35px}.portrait-frame{max-width:340px}.portrait-frame img{height:360px}.about h2{font-size:49px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:25px}.service-list{grid-template-columns:1fr}.service-filters{gap:7px}.service-filters button{padding:7px 12px;font-size:10px}.service-item h3{font-size:24px}.gallery{gap:12px;grid-template-columns:1fr 1fr;padding:0 25px}.gallery img{height:240px}.gallery figure:nth-child(2){margin-top:35px}.gallery figure:last-child{grid-column:1/-1;margin-top:20px}.gallery figure:last-child img{height:350px}.gallery figcaption{font-size:8px}.work-section{padding-bottom:50px}.booking-section{grid-template-columns:1fr;padding:65px 25px;gap:35px}.booking-panel{padding:24px 20px}.review-placeholder p{font-size:23px}footer{flex-direction:column;text-align:center;padding:35px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.reviews-intro{max-width:580px;margin:26px auto 0;font-size:13px}.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:42px;text-align:left}.review-card{display:flex;flex-direction:column;align-items:flex-start;border:1px solid var(--border);padding:30px 25px;background:#f2ece1}.review-stars{color:#806331;font-size:14px;letter-spacing:4px}.review-card blockquote{margin:23px 0 28px;flex:1}.review-card blockquote p{font:400 25px/1.35 'Cormorant Garamond',Georgia,serif;color:var(--ink)}.review-card figcaption strong{display:block;font-size:12px;font-weight:500}.review-card figcaption span{display:block;font-size:10px;color:var(--muted);margin-top:5px}.review-card .text-link{font-size:11px;margin-top:19px}.review-caption{font-size:9px;line-height:1.6;color:var(--muted);margin-top:14px}.reviews-source{font-size:10px;margin-top:24px}@media(max-width:800px){.reviews-grid{grid-template-columns:1fr;max-width:540px;margin:35px auto 0}.review-card{padding:28px}.review-card blockquote{margin:18px 0 22px}}

.booking-steps{padding-left:20px;margin:24px 0;color:var(--muted)}.booking-steps li{padding:5px 0}.booking-panel #reserve-camille{width:100%;margin:8px 0 14px}.booking-details{font-size:11px;line-height:1.7;margin:12px 0}.booking-details .text-link{font-size:11px}

.booking-section .booking-panel .booking-details{color:var(--muted)}

/* Adaptations pour les blocs modifiables WordPress. */
.wp-site-blocks{padding:0}.wp-block-group{box-sizing:border-box}.wp-block-image{margin:0}.main-nav{display:flex;gap:27px;font-size:12px}.link-wrap{margin:0}.brand a{color:var(--ink)}.brand .brand{font-size:inherit}.hero-visual>.wp-block-image{height:100%}.hero-visual>.wp-block-image img{height:100%;min-height:530px;max-height:630px}.wp-block-button__link{background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:0;padding:15px 24px;font-size:12px;letter-spacing:.3px}.wp-block-button__link:hover{background:#574333}.wp-block-buttons{gap:0}.small .wp-block-button__link{padding:12px 18px;font-size:11px}.service-arrow a{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--border);border-radius:50%;font-size:17px}.booking-panel .wp-block-buttons,.booking-panel .wp-block-button{width:100%}.booking-panel .wp-block-button__link{width:100%;margin:8px 0 14px}.review-card>.wp-block-group{width:100%}.review-card p{margin-bottom:8px}.review-card .review-stars{color:#806331}.photo-label p{color:var(--ink)}.hero-foot p{font-size:8px}.ribbon p{font:inherit;color:var(--ink)}.ribbon p:nth-child(even){color:var(--gold)}.wp-block-post-content{margin:0}.site-header .text-link{margin:0}.booking-section .booking-panel .booking-details{color:var(--muted)}
@media(max-width:640px){.main-nav{order:3;width:100%;justify-content:space-between;font-size:11px;gap:10px}.hero-visual>.wp-block-image img{min-height:0;max-height:none;height:100%}.site-header>.wp-block-buttons{margin-left:auto}.small .wp-block-button__link{font-size:10px;padding:10px 12px}.hero-visual{height:470px}}

.language-switch{text-align:right;max-width:1280px;margin:auto;padding:8px 5.5%;font-size:12px}.language-switch a{text-decoration:underline;text-underline-offset:4px}

/* Retrait du sceau décoratif de l’accueil. */
.hero-visual .seal{display:none!important}
