@font-face{font-family:"DM Sans";font-style:normal;font-weight:400 700;font-display:block;src:url("chez_patrick_assets/fonts/dm-sans-latin.woff2") format("woff2")}@font-face{font-family:"Fraunces";font-style:normal;font-weight:600 700;font-display:block;src:url("chez_patrick_assets/fonts/fraunces-latin.woff2") format("woff2")}

:root{--navy:#082f49;--navy2:#075985;--blue:#0284c7;--sky:#e0f2fe;--gold:#f4b942;--ink:#172033;--muted:#607080;--line:#dce5ea;--paper:#fffdf8;--white:#fff;--green:#15803d;--coral:#ea6a47;--radius:22px;--shadow:0 18px 50px rgba(8,47,73,.1)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.65 "DM Sans",system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}img{display:block;max-width:100%}
:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.container{width:min(1160px,calc(100% - 40px));margin-inline:auto}
.skip{position:fixed;z-index:100;left:16px;top:-80px;padding:10px 16px;border-radius:10px;background:#fff;color:var(--navy);font-weight:700}.skip:focus{top:16px}
.site-header{position:sticky;z-index:20;top:0;border-bottom:1px solid rgba(255,255,255,.13);background:rgba(8,47,73,.96);backdrop-filter:blur(12px)}
.nav{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:inline-flex;align-items:center;gap:10px;flex:none;color:#fff;font:700 1.4rem/1 "Fraunces",Georgia,serif;text-decoration:none}.brand span{color:var(--gold)}.site-logo{display:block;width:52px;height:52px;flex:0 0 52px;border:2px solid rgba(255,255,255,.72);border-radius:50%;object-fit:cover;object-position:center;box-shadow:0 3px 12px rgba(0,0,0,.22)}
.nav-list{display:flex;align-items:center;gap:4px;margin:0;padding:0;list-style:none}.nav-list a{display:block;padding:10px 12px;border-radius:10px;color:rgba(255,255,255,.78);font-size:.88rem;font-weight:600;text-decoration:none;transition:.2s}.nav-list a:hover,.nav-list a[aria-current=page]{color:#fff;background:rgba(255,255,255,.12)}.nav-list .nav-cta{color:var(--navy);background:var(--gold)}.nav-list .nav-cta:hover,.nav-list .nav-cta[aria-current=page]{color:var(--navy);background:#ffd166}
.menu-toggle{display:none;width:44px;height:44px;border:1px solid rgba(255,255,255,.25);border-radius:12px;color:#fff;background:transparent;cursor:pointer}.menu-toggle svg{width:22px;vertical-align:middle}
.hero{position:relative;overflow:hidden;padding:94px 0 105px;color:#fff;background:radial-gradient(circle at 84% 15%,rgba(244,185,66,.25),transparent 24%),linear-gradient(125deg,var(--navy),var(--navy2))}
.hero::after{content:"";position:absolute;width:380px;height:380px;right:-110px;top:-210px;border:1px solid rgba(255,255,255,.14);border-radius:50%}
.eyebrow{display:flex;align-items:center;gap:9px;margin-bottom:18px;color:#ffe8a8;font-size:.76rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.eyebrow::before{content:"";width:28px;height:2px;background:var(--gold)}
h1,h2,h3{font-family:"Fraunces",Georgia,serif;line-height:1.12}h1{max-width:790px;margin:0 0 20px;font-size:clamp(2.7rem,6vw,5rem);letter-spacing:-.045em}h1 em{color:var(--gold);font-style:normal}.lead{max-width:690px;margin:0;color:rgba(255,255,255,.8);font-size:clamp(1.05rem,2vw,1.22rem)}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border:1px solid transparent;border-radius:12px;font-weight:700;text-decoration:none;transition:.2s}.button:hover{transform:translateY(-2px)}.primary{color:var(--navy);background:var(--gold)}.secondary{color:#fff;border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.08)}.outline{color:var(--navy);border-color:#b8cad4;background:#fff}
.section{padding:92px 0}.soft{background:#f2f8fa}.heading{max-width:700px;margin-bottom:42px}.kicker{color:var(--blue);font-size:.76rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.heading h2{margin:7px 0 13px;color:var(--navy);font-size:clamp(2rem,4vw,3rem);letter-spacing:-.03em}.heading p{margin:0;color:var(--muted);font-size:1.05rem}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{padding:30px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 12px 35px rgba(8,47,73,.055)}.card h2,.card h3{margin:15px 0 9px;color:var(--navy)}.card h3{font-size:1.4rem}.card p{margin:0;color:var(--muted)}
.icon{display:inline-flex;width:48px;height:48px;align-items:center;justify-content:center;border-radius:14px;color:var(--navy2);background:var(--sky);font-weight:800}.icon svg{width:23px;height:23px}
.statbar{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);margin-top:-42px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.stat{display:flex;gap:14px;align-items:center;padding:22px 26px}.stat+.stat{border-left:1px solid var(--line)}.stat strong{display:block}.stat small{display:block;color:var(--muted)}
.checklist{display:grid;gap:10px;margin:20px 0 0;padding:0;list-style:none}.checklist li{display:flex;gap:10px;color:var(--muted)}.checklist li::before{content:"✓";flex:none;color:var(--green);font-weight:800}
.steps{counter-reset:steps;display:grid;gap:15px}.step{position:relative;padding:25px 25px 25px 82px;border:1px solid var(--line);border-radius:18px;background:#fff}.step::before{counter-increment:steps;content:counter(steps);position:absolute;left:24px;top:24px;display:grid;width:38px;height:38px;place-items:center;border-radius:12px;color:#fff;background:var(--blue);font-weight:800}.step h3{margin:0 0 6px;color:var(--navy);font-family:"DM Sans",sans-serif;font-size:1rem}.step p{margin:0;color:var(--muted);font-size:.92rem}
.notice{display:flex;gap:13px;margin-top:22px;padding:18px 20px;border:1px solid #fed7aa;border-radius:15px;color:#7c2d12;background:#fff7ed;font-size:.9rem}.notice strong{display:block}
.contact-card a{color:var(--blue);font-weight:700;text-decoration:none}.contact-list{display:grid;gap:20px;margin-top:24px}.contact-row{display:flex;gap:14px}.contact-row strong{display:block;color:var(--navy)}.contact-row span,.contact-row a{color:var(--muted)}
.map{overflow:hidden;min-height:500px;padding:0}.map iframe{display:block;width:100%;height:100%;min-height:500px;border:0}
.gallery{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:265px;gap:16px}.place{position:relative;overflow:hidden;border-radius:20px;color:#fff;background:#075985}.place:nth-child(1){grid-column:span 7;grid-row:span 2}.place:nth-child(2){grid-column:span 5}.place:nth-child(3){grid-column:span 5}.place:nth-child(n+4){grid-column:span 4}.gallery-four{grid-auto-rows:420px}.gallery-four .place:nth-child(n){grid-column:span 6;grid-row:auto}.place img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.place:hover img{transform:scale(1.04)}.place::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(4,30,47,.88))}.place-info{position:absolute;z-index:2;left:22px;right:22px;bottom:18px}.place-info h3{margin:0 0 2px;font-size:1.35rem}.place-info p{margin:0;color:rgba(255,255,255,.78);font-size:.84rem}
.terms{display:grid;gap:14px}.term{padding:24px;border:1px solid var(--line);border-radius:17px;background:#fff}.term h3{margin:0 0 7px;color:var(--navy);font-family:"DM Sans",sans-serif;font-size:1rem}.term p{margin:0;color:var(--muted);font-size:.92rem}
.cta{padding:0 0 92px}.cta-box{position:relative;overflow:hidden;padding:54px;border-radius:28px;color:#fff;background:linear-gradient(120deg,var(--navy),var(--navy2))}.cta-box h2{max-width:680px;margin:0 0 12px;font-size:clamp(2rem,4vw,3rem)}.cta-box p{max-width:640px;margin:0;color:rgba(255,255,255,.75)}
footer{padding:32px 0;border-top:1px solid var(--line);background:#fff}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-inner .brand{color:var(--navy)}.footer-copy,.footer-links a{color:var(--muted);font-size:.84rem}.footer-links{display:flex;flex-wrap:wrap;gap:19px}.footer-links a{font-weight:600;text-decoration:none}
.hero-beach .hero{background:linear-gradient(90deg,rgba(8,47,73,.94) 0%,rgba(8,47,73,.76) 55%,rgba(8,47,73,.38) 100%),url("chez_patrick_assets/plage.jpeg") center 62%/cover}
.hero-old-town .hero{background:linear-gradient(90deg,rgba(8,47,73,.95) 0%,rgba(8,47,73,.78) 54%,rgba(8,47,73,.40) 100%),url("chez_patrick_assets/vieux-nice-fleurs.jpeg") center 55%/cover}
.photo-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-auto-rows:250px;gap:16px}.photo-grid figure{position:relative;overflow:hidden;margin:0;border-radius:20px;background:var(--navy)}.photo-grid figure:first-child{grid-row:span 2}.photo-grid img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.photo-grid figure:hover img{transform:scale(1.035)}.photo-grid figcaption{position:absolute;left:14px;bottom:14px;padding:7px 11px;border-radius:9px;color:#fff;background:rgba(8,47,73,.84);font-size:.8rem;font-weight:700}
@media(max-width:900px){.menu-toggle{display:block}.nav-list{position:absolute;top:76px;left:0;right:0;display:none;padding:12px 20px 22px;border-top:1px solid rgba(255,255,255,.12);background:var(--navy)}.nav-list.open{display:block}.nav-list a{padding:13px 14px}.nav-list .nav-cta{margin-top:8px;text-align:center}.grid-3{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr 1fr;grid-auto-rows:280px}.place,.place:nth-child(n){grid-column:auto;grid-row:auto}.place:first-child{grid-column:span 2}}
@media(max-width:680px){.container{width:min(100% - 28px,1160px)}.hero{padding:72px 0 84px}.section{padding:70px 0}.actions{flex-direction:column}.actions .button{width:100%}.statbar,.grid-2,.grid-3{grid-template-columns:1fr}.stat+.stat{border-top:1px solid var(--line);border-left:0}.card{padding:24px}.gallery,.photo-grid{grid-template-columns:1fr;grid-auto-rows:270px}.place:first-child,.photo-grid figure:first-child{grid-column:auto;grid-row:auto}.map,.map iframe{min-height:360px}.cta{padding-bottom:70px}.cta-box{padding:38px 24px}.footer-inner{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
