:root{--gold:#C89A3D;--ink:#171717;--gray:#F3F4F6;--muted:#585858;--line:#dededb;--serif:'Cormorant Garamond',Georgia,serif;--sans:Manrope,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:#fff;font:1rem/1.7 var(--sans)}a{color:inherit;text-decoration:none}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:6px}button{font:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.06}h2{font-size:clamp(2.4rem,4vw,4.1rem);letter-spacing:-.025em}h3{font-size:2.25rem}img{display:block;max-width:100%}.site-header{height:108px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:#fff;position:relative;z-index:10;border-bottom:1px solid var(--line)}.brand{width:245px;height:70px;overflow:hidden;position:relative;display:block;flex-shrink:0}.brand img{position:static;width:100%;height:100%;max-width:100%;object-fit:cover;object-position:center}nav{display:flex;align-items:center;gap:2rem;font-size:.875rem}nav a{padding:10px 0;border-bottom:1px solid transparent}nav a:hover{border-color:var(--gold)}nav .nav-contact{padding:12px 21px;border:1px solid var(--gold)}nav .nav-contact:hover{background:var(--gold);color:var(--ink)}.menu-toggle{display:none}.hero{position:relative;min-height:690px;display:grid;grid-template-columns:49% 51%;padding-bottom:75px;overflow:hidden}.hero-image{grid-column:2;grid-row:1;background:url('assets/hero-vesta.png') center right 22%/cover no-repeat;min-height:615px}.hero-shade{display:none}.hero-content{grid-column:1;grid-row:1;padding:78px 6% 85px 10.2%;align-self:center}.eyebrow{font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:#88631c;margin-bottom:25px}h1{font-size:clamp(3.3rem,5.3vw,6rem);letter-spacing:-.035em;line-height:1.02}h1 em{font-style:normal;color:#9d7324}.hero-copy{max-width:430px;margin:28px 0 30px;color:var(--muted);line-height:1.85}.primary-button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:16px 24px;background:var(--ink);color:#fff;font-size:.875rem}.primary-button:hover{background:#77551a}.primary-button span{color:var(--gold);font-size:1.2rem}.hero-signature{position:absolute;bottom:0;left:0;width:100%;height:75px;display:flex;align-items:center;justify-content:center;gap:5%;background:var(--gold);font-size:.85rem;text-transform:uppercase;letter-spacing:.2em}.hero-signature i{width:30px;height:1px;background:#17171766}.image-caption{position:absolute;right:25px;bottom:95px;color:#fff;font-size:.75rem;background:#17171788;padding:3px 10px}.section{padding:100px 7%}.section-marker{display:flex;align-items:center;gap:18px;font-size:.75rem;letter-spacing:.13em;text-transform:uppercase;margin-bottom:52px}.section-marker>span:first-child{color:#87611b}.section-marker:after{content:'';height:1px;flex:1;background:var(--line);margin-left:25px}.intro-content{display:grid;grid-template-columns:1fr 1fr;gap:0 9%}.intro-content>.eyebrow{grid-column:1/-1;margin-bottom:20px}.intro-text{padding-top:4px;color:var(--muted);max-width:570px}.intro-text p+p{margin-top:20px}.dark-section{background:var(--ink);color:#fff}.dark-section .eyebrow{color:var(--gold)}.light{color:#c3c3c3}.light>span:first-child{color:var(--gold)}.light:after{background:#ffffff30}.expertise-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:50px}.expertise-heading>.eyebrow{max-width:200px}.expertise-heading h2{width:65%}.expertise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:70px}.expertise-grid article{border-top:2px solid var(--gold);padding:30px 0 0}.card-number{color:var(--gold);font-size:.875rem;letter-spacing:.08em}.expertise-grid h3{margin:27px 0 18px}.expertise-grid p{color:#c6c6c6;max-width:330px}.commitments-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%}.values>div{display:grid;grid-template-columns:30px 1fr;gap:12px 15px;padding:25px 0;border-bottom:1px solid var(--line)}.values>div:first-child{padding-top:0}.values span{font-size:.8rem;color:#87611b;padding-top:8px}.values h3{font-size:2rem}.values p{grid-column:2;color:var(--muted)}.contact{position:relative;overflow:hidden;display:grid;grid-template-columns:1.4fr 1fr;gap:8%;background:var(--gray);border-top:1px solid var(--line)}.contact:before{content:'';width:65px;height:4px;background:var(--gold);position:absolute;left:7%;top:0}.contact-mark{display:none}.contact-copy p:last-child{color:var(--muted);margin-top:24px;max-width:420px}.contact-details{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px}.contact-details a{border-bottom:1px solid #c89a3d88;font-size:1.1rem;overflow-wrap:anywhere}.contact-details a:hover{color:#77551a}.contact-details address{font-style:normal;color:var(--muted);margin-top:12px}footer{padding:32px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:.75rem;color:var(--muted)}footer>p span{color:var(--gold);padding:0 8px}.footer-brand{width:200px;height:56px}.copyright{white-space:nowrap}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link:focus{position:fixed;z-index:100;background:#fff;padding:15px;top:10px;left:10px}
@media(min-width:1600px){.hero-content{padding-left:14%}.hero{min-height:800px}.hero-image{min-height:725px}.section{padding-left:max(7%,calc((100vw - 1400px)/2));padding-right:max(7%,calc((100vw - 1400px)/2))}}
@media(max-width:1000px){nav{gap:1.1rem}.brand{width:210px;height:60px}.hero{min-height:610px}.hero-image{min-height:535px}.hero-content{padding-top:50px;padding-bottom:50px}h1{font-size:4rem}.section{padding:75px 6%}.expertise-grid{gap:25px}footer{flex-wrap:wrap}.contact{gap:5%}}
@media(max-width:760px){html{scroll-padding-top:25px}.site-header{height:88px;padding:0 6%}.brand{width:208px;height:60px}.menu-toggle{display:flex;flex-direction:column;gap:5px;background:none;border:1px solid var(--line);padding:12px;min-height:44px;min-width:44px}.menu-toggle>span:not(.sr-only){width:21px;height:1px;background:var(--ink)}nav{display:none;position:absolute;top:88px;left:0;right:0;background:#fff;padding:22px 6%;box-shadow:0 15px 20px #0001}nav.open{display:flex;align-items:stretch;flex-direction:column;gap:12px}.hero{display:flex;flex-direction:column;padding-bottom:67px;min-height:auto}.hero-content{padding:47px 7% 45px;order:0}.hero-image{order:1;min-height:330px;background-position:right center}h1{font-size:clamp(3rem,10vw,4.8rem)}h1 em br{display:none}.hero-copy{margin:24px 0}.hero-signature{height:67px;gap:4%;font-size:.66rem;letter-spacing:.08em}.hero-signature i{width:12px}.image-caption{bottom:78px;right:12px;font-size:.75rem}.section{padding:58px 7%}.section-marker{margin-bottom:34px;font-size:.75rem}.intro-content,.commitments-layout,.contact{grid-template-columns:1fr;gap:30px}.intro-content>.eyebrow{margin:0}.intro-content{gap:20px}.expertise-heading{display:block}.expertise-heading>.eyebrow{max-width:none}.expertise-heading h2{width:auto}.expertise-grid{grid-template-columns:1fr;margin-top:35px;gap:32px}.expertise-grid article{display:grid;grid-template-columns:35px 1fr;gap:10px 12px;padding-top:25px}.expertise-grid h3{margin:0}.expertise-grid p{grid-column:2;max-width:none}.card-number{padding-top:8px}.values{margin-top:10px}.contact-details{margin-top:10px}.contact-details a{font-size:1rem}footer{padding:25px 7%;display:flex;flex-direction:column;align-items:flex-start;gap:15px}.footer-brand{width:200px;height:56px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
[hidden]{display:none!important}input,select,textarea{font:inherit;color:var(--ink);width:100%;min-width:0;border:1px solid #b7b7b4;border-radius:3px;background:#fff;padding:11px 12px;line-height:1.5}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--gold);outline-offset:2px}button{cursor:pointer}button:disabled{opacity:.65;cursor:wait}.primary-button{border:1px solid var(--ink);border-radius:2px}.secondary-button{display:inline-block;padding:10px 16px;border:1px solid #b9a574;background:#fff;color:var(--ink);font:inherit;font-size:.875rem;border-radius:2px;text-align:center}.secondary-button:hover{background:#f3eee4}.text-link{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:5px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-grid label{display:flex;flex-direction:column;gap:8px;font-size:.875rem;font-weight:500}.full{grid-column:1/-1}.consent{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:12px;font-size:.875rem;margin:22px 0 14px}.consent input{width:20px;height:20px;margin-top:3px;flex-shrink:0;accent-color:var(--gold)}.form-note,.inbox-note{font-size:.8rem;color:var(--muted);line-height:1.7}.form-note{margin:12px 0 22px}.contact-form{grid-column:1/-1;border-top:1px solid var(--line);margin-top:18px;padding-top:40px}.contact-form h3{margin-bottom:28px}#contact-status{margin-top:18px;font-size:.95rem;max-width:750px}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.listing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:45px}.listing-card{display:block;border:1px solid var(--line);transition:box-shadow .2s;background:#fff;overflow:hidden}.listing-card:hover{box-shadow:0 8px 25px #00000012}.listing-card>img,.no-photo{width:100%;height:245px;object-fit:cover}.no-photo{display:grid;place-items:center;background:var(--gray);color:var(--muted);font-size:.875rem}.listing-card-content{padding:25px}.listing-card-content .eyebrow{margin-bottom:14px}.listing-card h3{font-size:1.9rem;line-height:1.18;overflow-wrap:anywhere}.listing-location{margin:13px 0 6px;color:var(--muted)}.listing-price{display:block;margin-top:18px;font-size:1.3rem;font-weight:500}.empty-state{grid-column:1/-1;background:var(--gray);border-left:3px solid var(--gold);padding:35px;max-width:100%}.empty-state h3{font-size:2rem;margin-bottom:13px}.empty-state p{color:var(--muted);max-width:680px;margin-bottom:20px}.listing-detail{max-width:1400px;margin:auto}.detail-heading h1{font-size:clamp(2.6rem,5vw,4.7rem);max-width:1000px;margin-bottom:18px}.detail-price{display:block;font-size:1.7rem;font-weight:500;margin-top:18px}.photo-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:36px 0}.photo-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover}.photo-gallery a:first-child{grid-column:span 2;grid-row:span 2}.photo-gallery a:first-child img{height:100%;aspect-ratio:auto;max-height:600px}.photo-gallery a:only-child{grid-column:1/-1;max-width:1000px}.property-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;padding:30px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:40px 0}.property-facts dt{color:var(--muted);font-size:.875rem}.property-facts dd{margin:5px 0 0;font-size:1.1rem}.long-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.85;margin:25px 0 35px;max-width:950px}.listing-detail h2{font-size:2.6rem}.listing-detail h3{font-size:1.8rem}.admin-body{background:#f7f7f8}.admin-main{max-width:1250px;margin:auto;padding:45px 5% 90px}.admin-heading{display:flex;align-items:center;justify-content:space-between;gap:25px}.admin-heading h1{font-size:3.5rem}.admin-heading .eyebrow{margin-bottom:10px}.admin-tabs{display:flex;position:static;background:transparent;box-shadow:none;border-bottom:1px solid var(--line);padding:0;gap:25px;margin:35px 0 20px}.admin-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;padding:15px 0;min-height:48px;color:var(--muted)}.admin-tabs button.active{color:var(--ink);border-color:var(--gold)}#message-count:not(:empty){margin-left:8px;padding:3px 7px;border-radius:20px;background:var(--gold);color:var(--ink)}#admin-status{margin:15px 0}.admin-list{display:grid;gap:18px}.admin-listing{display:flex;align-items:center;gap:25px;padding:20px;background:#fff;border:1px solid var(--line)}.admin-listing>img,.admin-no-photo{width:130px;height:110px;object-fit:cover;flex-shrink:0}.admin-no-photo{display:grid;place-items:center;background:var(--gray);font-size:.8rem;color:var(--muted)}.admin-listing-info{flex:1;min-width:0}.admin-listing h3{font-size:1.65rem;margin:10px 0 5px;overflow-wrap:anywhere}.admin-listing p{color:var(--muted);font-size:.875rem}.status-tag{display:inline-block;border:1px solid #ddd;padding:3px 10px;font: .75rem/1.6 var(--sans);background:var(--gray);color:#555}.status-tag.published{background:#f4ead4;color:#614409;border-color:#d9bd81}.status-tag.archived{background:#eee;color:#555}.row-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.editor{background:#fff;border:1px solid var(--line);padding:35px;margin-top:35px;scroll-margin-top:20px}.editor-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:35px}.editor-heading h2{font-size:2.6rem}.editor-actions{margin-top:30px;display:flex;gap:20px;align-items:center}.editor-actions p{font-size:.875rem}.photo-editor{display:flex;flex-wrap:wrap;gap:15px;margin-top:20px}.photo-editor>div{display:flex;flex-direction:column;gap:7px;width:130px;overflow-wrap:anywhere;font-size:.75rem}.photo-editor img{width:130px;height:100px;object-fit:cover}.message-card{padding:30px;background:#fff;border:1px solid var(--line);margin-top:20px}.message-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}.message-heading h3{font-size:1.9rem;overflow-wrap:anywhere}.message-property{font-weight:500}.message-card .form-note{margin-top:8px;margin-bottom:15px}.message-card a{overflow-wrap:anywhere}.inbox-note{margin:20px 0}.message-card .long-text{margin:20px 0}.message-card .primary-button{padding:10px 16px}
@media(max-width:1000px){.listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-listing{flex-wrap:wrap}.admin-listing .row-actions{width:100%}.site-header nav{gap:.8rem;font-size:.8rem}}
@media(max-width:760px){.listing-grid{grid-template-columns:1fr}.listing-card>img,.no-photo{height:250px}.form-grid{grid-template-columns:1fr}.contact-form{padding-top:30px}.form-grid .full{grid-column:1}.property-facts{grid-template-columns:1fr 1fr}.photo-gallery{grid-template-columns:1fr 1fr}.photo-gallery a:first-child{grid-column:1/-1;grid-row:auto}.photo-gallery a:first-child img{aspect-ratio:4/3}.admin-heading{align-items:flex-start;flex-direction:column}.admin-heading h1{font-size:2.75rem}.admin-tabs{display:flex;flex-direction:row;align-items:center;gap:25px;flex-wrap:wrap}.admin-main{padding:32px 5% 60px}.admin-listing{gap:15px;padding:15px}.admin-listing>img,.admin-no-photo{width:90px;height:90px}.editor{padding:22px 18px}.editor-heading{align-items:flex-start}.editor-heading h2{font-size:2.1rem}.editor-actions{flex-direction:column;align-items:flex-start}.message-card{padding:22px 18px}.message-heading{align-items:flex-start;flex-wrap:wrap}.empty-state{padding:25px}.site-header>.text-link{font-size:.8rem;max-width:95px;text-align:right}}

/* SCI Vesta — locations et recherche géographique */
.hero-image{background-image:url('/assets/appartement-vesta.png');background-position:center}.hero-content{padding-top:60px;padding-bottom:60px}.hero h1{font-size:clamp(3rem,4.6vw,5.6rem)}.hero-signature{letter-spacing:.12em}.listings-section{background:#f8f6f1}.search-intro{max-width:700px;color:var(--muted);margin-top:24px}.property-search{display:grid;grid-template-columns:1fr 1.2fr 1.2fr .7fr;gap:20px;background:white;border:1px solid #d9d2c5;padding:28px;margin:32px 0 20px;box-shadow:0 12px 30px #33251008}.property-search label{display:flex;flex-direction:column;gap:9px;font-size:.85rem;font-weight:600}.property-search .primary-button{justify-content:center;grid-column:1/3}.search-reset{grid-column:3/5;background:transparent;border:0;text-decoration:underline;text-underline-offset:4px;color:#5b5143;font-size:.85rem}#results-count{color:var(--muted);font-size:.9rem}.rental-showcase{display:grid;grid-template-columns:1.2fr 1fr;gap:26px;margin:40px 0}.rental-showcase figure{margin:0;position:relative;overflow:hidden}.rental-showcase img{width:100%;height:330px;object-fit:cover}.rental-showcase figcaption{position:absolute;bottom:0;left:0;right:0;padding:22px 20px 14px;color:white;font-size:.75rem;background:linear-gradient(transparent,#171717b8)}.type-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.type-grid article{border-top:1px solid var(--gold);padding-top:20px;display:flex;flex-direction:column;align-items:flex-start;gap:16px}.type-grid h3{font-size:2rem}.type-grid p{font-size:.9rem;color:var(--muted)}.type-grid a{font-size:.85rem;margin-top:auto}.intro{background:#f8f6f1}.listing-geography{font-size:.8rem;color:var(--muted);margin-top:8px}.empty-state .secondary-button{margin:18px 15px 0 0}.property-search select{min-height:48px}.rental-types h2{max-width:850px}
@media(max-width:1050px){.property-search{grid-template-columns:1fr 1fr}.property-search .primary-button{grid-column:auto}.search-reset{grid-column:auto}.type-grid{grid-template-columns:1fr 1fr}.hero h1{font-size:3.8rem}}
@media(max-width:760px){.hero h1{font-size:clamp(2.8rem,10vw,4.5rem)}.hero-content{padding:45px 7%}.hero-signature{font-size:.6rem;letter-spacing:.03em;gap:3%}.rental-showcase{grid-template-columns:1fr;gap:18px}.rental-showcase img{height:260px}.property-search{padding:20px;gap:16px}.property-search label{grid-column:1/-1}.property-search .primary-button,.search-reset{grid-column:1/-1}.search-reset{padding:8px}.type-grid{gap:30px 20px}.type-grid h3{font-size:1.8rem}}
@media(max-width:400px){.type-grid{grid-template-columns:1fr}}
