
:root{--ink:#223e35;--paper:#faf9f5;--rust:#a3472f;--line:#d6ddd5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:1.05rem/1.65 Arial,sans-serif}a{color:inherit;text-underline-offset:5px}button{font:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.12}h1{font-size:clamp(3rem,5.7vw,5.5rem);letter-spacing:-.04em}h2{font-size:clamp(2.3rem,4vw,3.7rem);letter-spacing:-.03em}h3{font-size:1.7rem}p{max-width:650px}.wrap{max-width:1280px;margin:auto;padding:0 5%}header{background:var(--paper);border-bottom:1px solid var(--line)}.header{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{text-decoration:none;font:clamp(1rem,2.1vw,1.5rem)/1.2 Georgia,serif}.house-name{white-space:nowrap;letter-spacing:normal}.eyebrow:has(.house-name){text-transform:none;letter-spacing:normal}.brand small{display:block;font:.75rem Arial,sans-serif;letter-spacing:.2em;margin-top:9px}nav{display:flex;align-items:center;gap:27px;font-size:.95rem}nav a{text-decoration:none}.btn{display:inline-flex;padding:14px 24px;background:var(--ink);color:#fff;text-decoration:none;border:1px solid var(--ink);justify-content:center;border-radius:3px;font-size:1rem}.btn:hover{background:#35584b}.btn.outline{background:transparent;color:var(--ink)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.85rem;font-weight:600;margin-bottom:22px}.hero{display:grid;grid-template-columns:1fr 1.1fr;min-height:650px}.hero-copy{padding:75px 10% 60px max(5%,calc((100vw - 1152px)/2));display:flex;flex-direction:column;justify-content:center}.hero-copy p{margin:25px 0 30px;color:#4c6158;font-size:1.15rem}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero-photo{position:relative;min-height:520px}.hero-photo>img{height:100%;width:100%;object-fit:cover;position:absolute}.caption{position:absolute;bottom:24px;left:24px;color:#fff;background:#223e35e8;padding:9px 18px;font-size:.9rem}.facts{display:grid;grid-template-columns:repeat(4,1fr);padding:28px 0;border-bottom:1px solid var(--line);text-align:center}.facts>div+div{border-left:1px solid var(--line)}.facts strong{display:block;font:2rem Georgia,serif}.facts span{font-size:.9rem}.section{padding:90px 0}.intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.intro p{margin-top:24px;color:#4c6158}.intro img{width:100%;height:420px;object-fit:cover;border-radius:3px}.tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}.tags span{border:1px solid var(--line);padding:7px 12px;font-size:.9rem}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:36px}.section-head p{max-width:350px;color:#4c6158}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}figure{margin:0}figure button{display:block;border:0;padding:0;background:none;width:100%;cursor:zoom-in}figure img{width:100%;height:270px;object-fit:cover;display:block;border-radius:3px}figcaption{padding:14px 0;font:1.3rem Georgia,serif}.green{background:var(--ink);color:var(--paper)}.green .eyebrow{color:#c4d1b6}.stay-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:40px}.stay{border-top:1px solid #698174;padding-top:24px}.stay>span{color:#d3b28d;font-size:.9rem}.stay h3{margin:15px 0}.stay p{color:#d6e1db}.discover{display:grid;grid-template-columns:1.05fr 1fr;gap:70px;align-items:center}.discover img{width:100%;height:430px;object-fit:cover}.discover p{margin:24px 0}.links{display:flex;gap:22px;flex-wrap:wrap}.reserve{border-top:1px solid var(--line);display:grid;grid-template-columns:1.3fr 1fr;gap:60px}.reserve p{margin:24px 0}.reserve-box{background:#e7ede5;padding:36px;align-self:center}.reserve-box h3{margin-bottom:18px}.reserve-box .btn{width:100%;margin-top:16px}.reserve-box p{font-size:.95rem;margin:0}footer{border-top:1px solid var(--line);padding:30px 0;font-size:.9rem}.foot{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}dialog{padding:0;border:0;max-width:90vw;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#0a1915da}dialog img{display:block;max-width:85vw;max-height:78vh}dialog button{display:block;margin:10px auto;padding:8px 25px;background:var(--ink);color:white;border:0;border-radius:3px;cursor:pointer}:focus-visible{outline:3px solid #a3472f;outline-offset:5px}@media(max-width:850px){.header{padding:22px 5%;flex-wrap:wrap}nav{gap:18px;flex-wrap:wrap}.hero{grid-template-columns:1fr}.hero-copy{padding:50px 6%}.hero-photo{min-height:380px}.facts{grid-template-columns:repeat(2,1fr);gap:24px}.facts>div:nth-child(3){border:0}.intro,.discover,.reserve{grid-template-columns:1fr;gap:35px}.section{padding:60px 0}.section-head{display:block}.section-head p{margin-top:22px}.gallery{grid-template-columns:repeat(2,1fr)}.stay-grid{grid-template-columns:1fr;gap:30px}}@media(max-width:500px){nav a:not(.btn){font-size:.9rem}nav .btn{padding:9px 15px}.brand{font-size:1.05rem}.hero-photo{min-height:310px}.gallery{grid-template-columns:1fr}figure img{height:280px}.intro img,.discover img{height:310px}.actions .btn{width:100%}.reserve-box{padding:26px}}
.discover .cahors-view img{height:auto;aspect-ratio:5000/1853;object-fit:contain;border-radius:3px}.cahors-view figcaption{font: .75rem/1.4 Arial,sans-serif;padding-top:6px;color:#4c6158}.cahors-view a{display:inline}
#alentours.discover{grid-template-columns:1fr;gap:28px}#alentours .cahors-view{width:100%}#alentours>div{max-width:800px}#alentours .cahors-view img{display:block;width:100%;height:auto}

.header{flex-wrap:wrap;padding-top:20px;padding-bottom:20px}.header nav{flex-wrap:wrap;gap:18px}.page-title{padding:65px 0 45px}.page-title h1{font-size:clamp(2.5rem,5vw,4.5rem)}.page-title p{margin-top:22px;color:#4c6158}.crumb{font-size:.875rem;margin-bottom:22px}.page-content{padding-bottom:75px}.content-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}.info-card{background:white;border:1px solid var(--line);padding:30px;border-radius:4px}.info-card h3{margin-bottom:18px}.info-card p+p{margin-top:15px}.info-card ul{padding-left:22px}.wide{grid-column:1/-1}.page-content h2{font-size:2.3rem;margin-bottom:22px}.page-content .intro{margin-bottom:60px}.page-content .intro img{height:360px}.page-photo{width:100%;height:auto;display:block;border-radius:4px}.note{padding:20px;border-left:3px solid var(--rust);background:#f0eee6;margin:25px 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-weight:600;font-size:1rem}input,select,textarea{font:inherit;width:100%;padding:12px;border:1px solid #9baa9e;border-radius:3px;background:#fff;color:var(--ink);margin-top:7px}textarea{resize:vertical;min-height:140px}.check{display:flex;align-items:flex-start;gap:12px;font-weight:400}.check input{width:20px;flex:0 0 20px;margin-top:4px}.help{font-size:.9rem;color:#4c6158;font-weight:400}.form-result{margin-top:25px;padding:24px;background:#e7ede5}.form-result pre{white-space:pre-wrap;font:1rem/1.6 Arial,sans-serif;overflow-wrap:anywhere}.form-result h3{margin-bottom:15px}.form-error{color:#933922;margin:20px 0}.btn{cursor:pointer}.page-cta{margin-top:45px;padding:32px;background:var(--ink);color:white}.page-cta p{margin:18px 0}.page-cta .btn{background:white;color:var(--ink);border-color:white}.footer-links{display:flex;flex-wrap:wrap;gap:20px}.house-name{white-space:nowrap}.card-number{color:var(--rust);font-size:.9rem}.address-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:25px}.address-tabs button{padding:9px 15px;background:white;color:var(--ink);border:1px solid var(--line);border-radius:3px;cursor:pointer}.address-tabs button[aria-pressed=true]{background:var(--ink);color:white}.info-card a{display:inline-block;margin-top:15px}.subtitle{margin:20px 0}.mobile-menu{width:100%}nav a[aria-current=page]{text-decoration:underline}button.btn.outline:hover{background:#e7ede5} [hidden]{display:none!important}@media(max-width:700px){.content-grid,.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.page-title{padding-top:40px}.info-card{padding:24px}.header nav{gap:15px}.house-name{font-size:min(1em,5vw)}.page-content .intro{gap:30px}}

/* A fine paper grain on light surfaces, behind content only. */
:root{--paper:#faf8f2}
body,header{background-color:var(--paper);background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22180%22%20height%3D%22180%22%20viewBox%3D%220%200%20180%20180%22%3E%3Cfilter%20id%3D%22grain%22%3E%3CfeTurbulence%20type%3D%22fractalNoise%22%20baseFrequency%3D%22.8%22%20numOctaves%3D%223%22%20stitchTiles%3D%22stitch%22%2F%3E%3CfeColorMatrix%20type%3D%22saturate%22%20values%3D%220%22%2F%3E%3CfeComponentTransfer%3E%3CfeFuncA%20type%3D%22linear%22%20slope%3D%22.065%22%2F%3E%3C%2FfeComponentTransfer%3E%3C%2Ffilter%3E%3Crect%20width%3D%22100%25%22%20height%3D%22100%25%22%20filter%3D%22url%28%23grain%29%22%2F%3E%3C%2Fsvg%3E");background-repeat:repeat}
.info-card{background-color:#fffdf8;background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22180%22%20height%3D%22180%22%20viewBox%3D%220%200%20180%20180%22%3E%3Cfilter%20id%3D%22grain%22%3E%3CfeTurbulence%20type%3D%22fractalNoise%22%20baseFrequency%3D%22.8%22%20numOctaves%3D%223%22%20stitchTiles%3D%22stitch%22%2F%3E%3CfeColorMatrix%20type%3D%22saturate%22%20values%3D%220%22%2F%3E%3CfeComponentTransfer%3E%3CfeFuncA%20type%3D%22linear%22%20slope%3D%22.065%22%2F%3E%3C%2FfeComponentTransfer%3E%3C%2Ffilter%3E%3Crect%20width%3D%22100%25%22%20height%3D%22100%25%22%20filter%3D%22url%28%23grain%29%22%2F%3E%3C%2Fsvg%3E");background-repeat:repeat;border-color:#deded3}
footer{background-color:transparent}

.form-result{background:#fffdf8;border:1px solid #d8d5c8;box-shadow:0 8px 25px #223e3508}.form-result pre{padding:25px 0;border-top:1px solid #e1dfd5;font:1.05rem/1.8 Georgia,serif}.send-status{margin:15px 0}.btn:disabled{opacity:.65;cursor:wait}

.reservation-page main,.reservation-page main label,.reservation-page main input,.reservation-page main select,.reservation-page main textarea,.reservation-page main button,.reservation-page main .btn,.reservation-page .form-result pre{font-family:Georgia,serif}

.stay-estimate{background:#f4f1e7;border:1px solid #d9d4c2;border-left:3px solid var(--ink);padding:24px;border-radius:3px}.stay-estimate h3{font-size:1.45rem}.estimate-summary{font-size:1.25rem;margin:14px 0;font-weight:600}.estimate-breakdown{padding-left:22px;margin:12px 0}.stay-estimate .help+.help{margin-top:12px}

.estimate-tax{margin:16px 0 8px}.estimate-total{font-size:1.2rem;font-weight:600;margin:12px 0}

.page-content .intro img.family-history-photo{height:auto;aspect-ratio:4/3;object-fit:contain}

.family-history figcaption{text-align:center;font:italic 1.15rem/1.5 Georgia,serif;color:var(--ink);padding:14px 0 0}

.header nav>a{white-space:nowrap}

/* Essai : nom complet de la maison en Georgia gras sur tous les écrans. */
.house-name{font-family:Georgia,serif;font-weight:700}

.room-guide{margin-bottom:28px}.room-photo{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in;margin-top:22px}.room-photo img{width:100%;height:320px;object-fit:cover}.room-dialog img{max-width:85vw;max-height:78vh;object-fit:contain}@media(max-width:700px){.room-photo img{height:280px}}
