/* One shared wall: exactly the material and light used by the territory section. */
:root{--territory-wall:radial-gradient(ellipse at 95% 0%,#2854f517,transparent 50%),url('assets/anthracite-slabs.svg');--territory-ink:#edf2fb;--territory-muted:#b2c0d5}
.arch-main,.arch-preparation,.arch-booking,.arch-stats,.arch-legal,.arch-main .immersive-hero,.arch-main .territory-experience,.arch-main .editorial,.arch-main .services-section,.arch-main .weather-section,.arch-main .solar-section,.arch-main .booking-section,.arch-main .how-section,.arch-main .prep-teaser,.arch-main .closing,.arch-main>footer,.arch-main .site-header,.arch-preparation .prep-header,.arch-preparation>footer,.arch-legal .prep-header,.arch-legal>footer,.arch-stats .stats-sidebar,.arch-main .solar-top,.arch-main .solar-map-tools,.arch-main .solar-map-readout,.arch-main .solar-timeline,.arch-main .solar-suggestions{background-color:#0f1722;background-image:var(--territory-wall);background-size:auto,640px 400px;background-repeat:no-repeat,repeat;background-blend-mode:normal;color:var(--territory-ink)}
.arch-main{--bg:#0f1722;--text:#edf2fb;--muted:#b2c0d5;--line:#b4c9e12b}
.arch-main .site-header{border-bottom:1px solid #9db4d526;box-shadow:0 5px 24px #0002}
.arch-main .monogram,.arch-main .brand-name{color:#edf2fb}
.arch-main .site-header .viewfinder-nav{background:linear-gradient(135deg,#25354de8,#121d2df5);border-color:#c1d2ec25;box-shadow:inset 0 1px 0 #fff1,0 8px 20px #0003}
.arch-main .viewfinder-nav::before{background:#ffffff08}
.arch-main .nav-camera,.arch-main .nav-icon{color:#bbd0f2}.arch-main .nav-camera small,.arch-main .nav-caption small{color:#a4b7d2}
.arch-main .site-header .viewfinder-link,.arch-main .site-header nav>a[href="#fonctionnement"]{color:#cbd8eb}
.arch-main .site-header .viewfinder-link:hover,.arch-main .site-header .viewfinder-link[aria-current=location]{background:#2854f52b;color:#d4e2ff;border-color:#adc2ff40}
.arch-main .viewfinder-link[aria-current=location] .nav-icon,.arch-main .viewfinder-link:hover .nav-icon{color:#adc8ff}
.arch-main #nav-menu-toggle{background:#17283b;color:#dfebfd;border-color:#9db7da40}.arch-main #nav-menu-toggle[aria-expanded=true]{background:#213b61}
.arch-main .immersive-hero::before{background:linear-gradient(130deg,#3b52732c,#121d2d70 65%,#12264155);border-color:#bed4f42b;box-shadow:inset 9px 9px 22px #0004,inset -1px -1px 0 #c8ddff1c,18px 25px 40px #0005}
.arch-main .hero-copy>.eyebrow,.arch-main .hero-description,.arch-main .hero-signature,.arch-main .hero-bottom,.arch-main .hero-scroll,.arch-main .lens-label{color:#b0bfd4}
.arch-main .hero-signature>span:not(:first-child)::before{color:#9db3d0}.arch-main .hero-bottom{border-color:#cadbfa25;box-shadow:none}
.arch-main .floating-note{background:#192c45df;border-color:#b5cce936;color:#bbcbe2;box-shadow:0 12px 30px #0005}.arch-main .floating-note strong{color:#f1f6ff}
.arch-main .service-card,.arch-main .how-grid article{background:#142132f0;border-color:#c2d6ef26;box-shadow:inset 0 1px 0 #ffffff0e,10px 16px 28px #0004;color:#edf2fb}
.arch-main .service-body>p,.arch-main .service-tags>span,.arch-main .how-grid p,.arch-main .prep-teaser>div>p:not(.eyebrow),.arch-main .section-heading>p,.arch-main .bespoke p{color:#b6c4d8}
.arch-main .service-link,.arch-main .service-tags{border-color:#bbcee82b}.arch-main .service-link{color:#e2ecfc}
.arch-main .weather-panel{background:#142132f0;border-color:#b2c9e93b;box-shadow:0 0 0 6px #080e17,0 0 0 7px #b6c9e42b,17px 22px 34px #0005,inset 0 1px 0 #fff1;color:#eef3fb}
.arch-main .weather-panel label{color:#dce8fa}.arch-main .weather-search input{background:#f8fbff;color:#172339;border-color:#b8c9e2}
.arch-main #weather-help,.arch-main #weather-status,.arch-main .weather-credit,.arch-main .weather-note,.arch-main #weather-issued,.arch-main .weather-observation,.arch-main .weather-result-heading>div>p:last-child{color:#b6c6dd}
.arch-main .weather-credit a,.arch-main .weather-result-heading>a{color:#b4ceff}.arch-main .weather-now{background:linear-gradient(115deg,#20354f,#17263a);border-color:#adc8ec35}
.arch-main .weather-now-main strong,.arch-main .weather-now-meta strong,.arch-main .weather-day-temp,.arch-main .weather-day h5{color:#edf5ff}
.arch-main .weather-now-main>span:last-child,.arch-main .weather-now-meta,.arch-main .weather-condition,.arch-main .weather-precip,.arch-main .weather-wind,.arch-main .weather-day details>p{color:#b4c6df}
.arch-main .weather-day{background:#0e1929;border-color:#a7caff28}.arch-main .weather-day summary,.arch-main .weather-label{color:#b4ceff}
.arch-main .solar-studio,.arch-main .calendar-panel{box-shadow:0 0 0 6px #080f19,0 0 0 7px #b5cbe52b,20px 28px 46px #0006}
.arch-main .closing>.eyebrow{color:#adc1de}.arch-main .closing .button{background:var(--accent);border-color:var(--accent);color:white;box-shadow:0 8px 24px #0003}.arch-main .closing .button:hover{background:var(--accent-hover)}
.arch-main>footer{border-color:#b5c9e12b}.arch-main .footer-name{color:#edf2fb}.arch-main .footer-name>span,.arch-main>footer small{color:#b0bfd4}
.arch-main .duration,.arch-main .how-grid article>span,.arch-preparation .prep-num{color:#bad0ff}.arch-stats .private-badge{color:#b1ccff;border-color:#adc7ec55}
/* The booking wall is dark; actual input, calendar, and summary surfaces stay light. */
.arch-booking{color:#eaf1fd}.arch-booking fieldset{background:#16263bdd;border-color:#bed2ee29;box-shadow:7px 10px 18px #0004;color:#edf2fb}
.arch-booking legend,.arch-booking label[for=property-address],.arch-booking label[for=photographe],.arch-booking label[for=jour],.arch-booking .champs label,.arch-booking #code-form label{color:#dce8fa}
.arch-booking .hint,.arch-booking #etat,.arch-booking .property-step #territory-message,.arch-booking #message-client,.arch-booking #message-code,.arch-booking #destination,.arch-booking #recu{color:#b4c5df}
.arch-booking .calendar,.arch-booking .booking-summary,.arch-booking .service-selector,.arch-booking #succes{color:#18253b}
/* Preparation and reading pages use the same wall, with quiet inset panels. */
.arch-preparation,.arch-legal{color:#edf2fb}.arch-preparation .prep-header,.arch-legal .prep-header{border-color:#c1d3ed25;box-shadow:none}
.arch-preparation .prep-eyebrow,.arch-legal .prep-eyebrow,.arch-preparation .prep-hero>div>p:not(.prep-eyebrow),.arch-legal .prep-hero>div>p:not(.prep-eyebrow){color:#b8c7dd}
.arch-preparation .prep-progress,.arch-preparation .prep-group,.arch-legal .prep-hero{background:#152438ef;border-color:#c0d4ee25;box-shadow:8px 12px 24px #0004;color:#edf2fb}
.arch-preparation .prep-progress{border-left-color:#2854f5}.arch-preparation .prep-local,.arch-preparation .prep-total p,.arch-preparation .prep-group summary small,.arch-preparation .prep-group-count,.arch-preparation .prep-item small,.arch-preparation .prep-end p{color:#b8c7dd}
.arch-preparation .prep-item{border-color:#bed0ea26}.arch-preparation .prep-item input:checked~span strong{color:#a3b5ce}
.arch-preparation .prep-secondary,.arch-preparation .prep-reset{background:#162a45;color:#edf2fb;border-color:#b4c9e13d}.arch-preparation .prep-contact{border-color:#c0d3ed26}
.arch-preparation .prep-contact a,.arch-preparation .prep-back,.arch-preparation footer a,.arch-legal a{color:#b1ccff}
.arch-preparation .prep-hero figure{border-color:#b6ceee40;box-shadow:10px 12px 0 #08111f66,23px 27px 35px #0005}
.arch-preparation footer{border-color:#c0d3ed26}.arch-legal .prep-hero p{color:#c6d4e8}
/* Private dashboard: dark panels, light controls, no change to its access rules. */
.arch-stats{color:#edf2fb}.arch-stats .stats-panel,.arch-stats #stats-gate,.arch-stats .kpi{background:#152438ed;border-color:#b7cde72b;color:#edf2fb;box-shadow:8px 10px 20px #0003}
.arch-stats .eyebrow,.arch-stats header p,.arch-stats #stats-gate p,.arch-stats label,.arch-stats .stats-method,.arch-stats #stats-status,.arch-stats #gate-status,.arch-stats .kpi p,.arch-stats .kpi small,.arch-stats .panel-heading p,.arch-stats th,.arch-stats .empty{color:#b3c5df}
.arch-stats button:not(.primary){color:#e0ebfc}.arch-stats td,.arch-stats th{border-color:#bdd1ed25}.arch-stats #daily-chart text{fill:#b3c5df}
@media(max-width:760px){.arch-main .site-header .viewfinder-nav{background:#142238f7}.arch-main .site-header .viewfinder-nav>a:not(.button){background:#20334b;color:#dce8fa}.arch-main .site-header .viewfinder-nav .viewfinder-link[aria-current=location]{background:#2854f532;color:#dce8ff;border-color:#abc4ff40}.arch-main .immersive-hero::before{box-shadow:inset 6px 6px 14px #0003,8px 12px 20px #0004}}
@media(prefers-contrast:more){.arch-main,.arch-preparation,.arch-booking,.arch-stats,.arch-legal{background-image:none;background-color:#0a1019}.arch-main .service-card,.arch-main .how-grid article,.arch-main .weather-panel,.arch-preparation .prep-group,.arch-booking fieldset{background:#101d2d;color:#fff}}
@media print{.arch-main,.arch-preparation,.arch-booking,.arch-stats,.arch-legal{background:white!important;color:#111!important}.arch-main *,.arch-preparation *,.arch-booking *,.arch-stats *,.arch-legal *{color:#111!important;text-shadow:none!important}.arch-main section,.arch-main footer,.arch-main .site-header,.arch-preparation .prep-header,.arch-preparation>footer,.arch-legal .prep-header,.arch-stats .stats-sidebar,.arch-main .solar-top,.arch-main .solar-map-tools,.arch-main .solar-map-readout,.arch-main .solar-timeline,.arch-main .solar-suggestions{background:white!important;background-image:none!important;box-shadow:none!important}.arch-preparation .prep-group,.arch-preparation .prep-progress,.arch-legal .prep-hero,.arch-booking fieldset,.arch-stats .stats-panel,.arch-stats .kpi,.arch-stats #stats-gate{background:white!important;box-shadow:none!important}}
