/*
Theme Name: Aylmerwood
Theme URI: https://aylmerwood.com/
Author: Aylmerwood
Description: Site bilingue Aylmerwood avec textes et photos modifiables depuis le tableau de bord WordPress.
Version: 1.0.1
Requires at least: 6.5
Requires PHP: 8.0
License: GPL-2.0-or-later
Text Domain: aylmerwood
*/
@font-face{font-family:AW;src:local('Arial');font-display:swap}
:root{--forest:#183c30;--forest-dark:#10291f;--ink:#202b25;--muted:#626b64;--paper:#fcfcf9;--cream:#e9dec1;--sun:#efae52;--line:#dce1db;--soft:#f0f3ed;--radius:8px;--wrap:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:AW,Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.65}body.dialog-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}img{max-width:100%;display:block}figure,h1,h2,h3,p{margin:0}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #d97e14;outline-offset:4px}::selection{background:var(--sun);color:var(--forest-dark)}.wrap{width:min(var(--wrap),calc(100% - 96px));margin-inline:auto}.section{padding-block:105px}.eyebrow{font-size:.78rem;text-transform:uppercase;font-weight:700;letter-spacing:.13em;color:var(--forest);margin-bottom:23px}.multiline{white-space:pre-line}h1,h2,h3{font-weight:500;letter-spacing:-.045em;line-height:1.1}h2{font-size:clamp(2.15rem,3.6vw,3.45rem)}h3{font-size:1.45rem;line-height:1.25}.skip-link{position:fixed;left:1rem;top:-100px;z-index:200;background:var(--sun);padding:12px 20px}.skip-link:focus{top:1rem}
.site-header{height:94px;padding-inline:48px;display:flex;align-items:center;justify-content:space-between;gap:30px;max-width:1600px;margin:auto}.wordmark{display:flex;flex-direction:column;line-height:1;gap:10px;color:var(--forest)}.wordmark>span{font-size:2rem;font-weight:700;letter-spacing:-.07em}.brand-dot{color:#c36a26}.wordmark small{font-size:.75rem;text-transform:uppercase;letter-spacing:.18em;font-weight:600}.navigation{display:flex;gap:30px;align-items:center;font-size:.9rem;font-weight:600}.navigation>a:not(.button){padding-block:10px}.navigation>a:not(.button):hover{text-decoration:underline;text-underline-offset:6px}.language{border-left:1px solid var(--line);padding-left:23px}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;border:1px solid transparent;min-height:55px;padding:14px 25px;border-radius:4px;font-size:.93rem;font-weight:700;letter-spacing:0;line-height:1.3;transition:background .2s,transform .2s}.button>span{font-size:1.4rem;font-weight:400;line-height:1}.button:hover{transform:translateY(-2px)}.button-small{min-height:47px;padding:12px 20px;gap:18px}.button-dark{background:var(--forest);color:white}.button-dark:hover{background:var(--forest-dark)}.button-sun{background:var(--sun);color:var(--forest-dark)}.button-sun:hover{background:#f5bc68}.button-outline{border-color:#afbdaf;color:var(--forest);background:transparent}.button-outline:hover{background:#e2e8de}.text-link{font-size:.92rem;font-weight:700;text-decoration:underline;text-underline-offset:6px;display:inline-flex;align-items:center;gap:16px}.text-link>span{text-decoration:none;display:inline-block}.text-link-light{color:white;text-decoration-color:#879a8d}.menu-toggle{display:none}
.hero{margin:0 22px;display:grid;grid-template-columns:47% 53%;min-height:615px;max-width:1556px;background:var(--forest);color:white;overflow:hidden;border-radius:7px}.hero-copy{padding:65px 48px 34px 50px;position:relative;z-index:1}.hero-eyebrow{color:#cad5c8;letter-spacing:.12em;font-size:.75rem;margin-bottom:40px}.hero h1{font-size:clamp(3rem,5.7vw,5.8rem);line-height:1.03;letter-spacing:-.058em}.hero h1>span{color:var(--cream)}.hero-description{color:#e2e8de;max-width:420px;line-height:1.7;margin-top:28px;font-size:1.03rem}.hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:32px}.hero-signature{display:flex;align-items:center;gap:16px;font-size:.85rem;color:var(--cream);margin-top:48px;line-height:1.35}.hero-signature small{font-size:.75rem;opacity:.75}.signature-line{width:45px;height:1px;background:#708575}.hero-photo{position:relative;min-width:0}.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:60% 50%}.hero-photo:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,rgba(10,24,18,.52));pointer-events:none}.hero-photo figcaption{position:absolute;bottom:25px;left:27px;z-index:1;display:flex;align-items:center;gap:12px;font-size:.78rem}.photo-mark{border:1px solid #ffffff80;display:grid;place-items:center;width:39px;height:39px;border-radius:50%;font-size:.75rem;font-weight:700;letter-spacing:-.06em}.trust-strip{display:grid;grid-template-columns:repeat(3,1fr);padding-block:30px;border-bottom:1px solid var(--line);gap:32px}.trust-strip>div{display:flex;align-items:center;gap:17px}.trust-strip>div+div{border-left:1px solid var(--line);padding-left:36px}.trust-icon{font-size:1.5rem;color:var(--forest);width:29px;text-align:center}.trust-strip p{line-height:1.5}.trust-strip strong{font-size:.89rem;font-weight:600;display:block}.trust-strip p>span{font-size:.81rem;color:var(--muted)}
.section-heading{display:flex;justify-content:space-between;gap:55px;align-items:flex-end;margin-bottom:44px}.section-heading>div{max-width:640px}.section-intro{max-width:370px;color:var(--muted);font-size:1rem;line-height:1.75;padding-bottom:4px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.service-image{display:block;aspect-ratio:1.35;position:relative;overflow:hidden;border-radius:var(--radius);background:#e5e9e1}.service-image img{height:100%;width:100%;object-fit:cover;transition:transform .6s}.service-image:hover img{transform:scale(1.03)}.service-image span{position:absolute;left:18px;top:18px;color:white;border:1px solid #ffffffa0;background:#143426a8;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;font-size:.75rem}.service h3{margin:24px 0 12px}.service>p{color:var(--muted);line-height:1.7;font-size:.95rem;max-width:345px}.service>.text-link{margin-top:24px;font-size:.85rem}
.transformation{background:var(--soft);padding-block:85px}.transformation-grid{display:grid;grid-template-columns:.8fr 1.3fr;gap:85px;align-items:center}.transformation-copy>p:not(.eyebrow){margin:25px 0 28px;color:var(--muted);max-width:340px}.comparison{aspect-ratio:4/3;position:relative;overflow:hidden;border-radius:var(--radius);background:#dae2d6}.comparison img{height:100%;width:100%;object-fit:cover}.compare-before{position:absolute;inset:0}.compare-after{position:absolute;inset:0;clip-path:inset(0 0 0 var(--position))}.compare-label{position:absolute;bottom:20px;padding:5px 13px;background:#fffdf4ec;border-radius:3px;color:var(--forest-dark);font-size:.78rem;font-weight:700;z-index:2}.label-before{left:20px}.label-after{right:20px}.compare-line{position:absolute;top:0;bottom:0;left:var(--position);width:2px;background:white;z-index:3;pointer-events:none}.compare-line>span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;background:white;width:45px;height:45px;display:grid;place-items:center;font-size:1.35rem;color:var(--forest);box-shadow:0 2px 10px #0002}.comparison input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0;z-index:4}.comparison:focus-within{outline:3px solid #d97e14;outline-offset:4px}.compare-note{font-size:.75rem;color:var(--muted);margin-top:12px;line-height:1.5}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 25px}.gallery-button{padding:0;border:0;background:#e4e7e0;display:block;width:100%;aspect-ratio:1.23;position:relative;border-radius:var(--radius);overflow:hidden}.gallery-button img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery-button:hover img{transform:scale(1.04)}.zoom-icon{position:absolute;right:15px;bottom:15px;width:33px;height:33px;background:#fffaf0ed;border-radius:50%;display:grid;place-items:center;font-size:1.3rem}.project figcaption{margin-top:17px}.project figcaption>span{font-size:.75rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}.project h3{font-size:1.12rem;letter-spacing:-.025em;margin-top:5px}.gallery-bottom{text-align:center;margin-top:42px}.gallery-bottom a{font-size:.88rem}.video-section{padding-bottom:25px}.project-video{width:100%;max-height:650px;aspect-ratio:16/9;object-fit:contain;display:block;background:#12271f;border-radius:var(--radius)}
.approach{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.approach-photo{position:relative;min-height:620px;height:100%;border-radius:var(--radius);overflow:hidden}.approach-photo>img{height:100%;width:100%;position:absolute;object-fit:cover;object-position:55%}.approach-photo figcaption{position:absolute;left:24px;bottom:24px;right:24px;background:var(--forest);color:var(--cream);display:flex;align-items:center;gap:20px;padding:22px 25px;border-radius:4px}.approach-photo figcaption>span{font-size:2.4rem;font-weight:700;letter-spacing:-.08em;border-right:1px solid #ffffff30;padding-right:24px}.approach-photo figcaption p{font-size:.86rem;line-height:1.8}.approach h2{font-size:clamp(2.15rem,3vw,3rem)}.approach-intro{margin-top:24px;color:var(--muted)}.steps{list-style:none;padding:0;margin:30px 0 0}.steps>li{padding:23px 0;border-top:1px solid var(--line);display:flex;gap:25px}.steps>li>span{color:#859c87;font-size:.78rem;line-height:1.6;padding-top:5px}.steps h3{font-size:1.25rem;margin-bottom:7px}.steps p{font-size:.93rem;color:var(--muted)}
.contact-section{background:var(--forest);color:#fff;padding:86px 0 92px}.contact-grid{display:grid;grid-template-columns:1fr 1.04fr;gap:90px;align-items:start}.contact-copy{padding-top:14px}.contact-copy .eyebrow{color:#c8d3c4}.contact-copy h2{font-size:clamp(2.5rem,4.6vw,4.5rem);color:var(--cream)}.contact-intro{margin-top:25px;color:#d4dfd1;max-width:360px;line-height:1.8}.contact-detail{margin-top:34px}.contact-detail>span{display:block;color:#b8cbb8;font-size:.76rem;letter-spacing:.09em;text-transform:uppercase;margin-bottom:6px}.contact-detail>a{font-size:1rem;word-break:break-word}.contact-detail>a:hover{text-decoration:underline;text-underline-offset:5px}.contact-detail .phone-link{font-size:1.85rem;letter-spacing:-.04em;font-weight:600}.service-area{color:#b8cbb8;font-size:.9rem;line-height:1.7;max-width:340px;margin-top:38px;border-top:1px solid #ffffff25;padding-top:25px}.quote-form{background:#fffdf7;color:var(--ink);padding:32px;border-radius:var(--radius);min-width:0}.quote-form label{display:block;font-size:.86rem;font-weight:600;margin-bottom:7px}.quote-form input:not([type=file]),.quote-form select,.quote-form textarea{display:block;width:100%;border:1px solid #cfd6ce;background:white;color:var(--ink);padding:11px 12px;min-height:46px;border-radius:4px;font-size:1rem;line-height:1.5}.quote-form textarea{resize:vertical;min-height:112px}.quote-form input::placeholder,.quote-form textarea::placeholder{color:#798079;opacity:1}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.quote-form>label:not(:first-of-type){margin-top:16px}.field-hint{font-size:.75rem;color:var(--muted);line-height:1.5;margin-top:7px}.quote-form input[type=file]{font-size:.8rem;max-width:100%;width:100%}.quote-form input[type=file]::file-selector-button{border:1px solid #cfd6ce;border-radius:4px;padding:9px 12px;margin-right:8px;background:#eff3eb;color:var(--forest);font-weight:600;cursor:pointer}.form-submit{margin-top:23px;width:100%}.privacy-note{font-size:.75rem;color:var(--muted);line-height:1.6;margin-top:14px;text-align:center}.privacy-open{padding:0;background:none;border:none;font:inherit;text-decoration:underline;text-underline-offset:3px}.form-status{font-size:.88rem;margin-top:12px;line-height:1.55}.form-status:empty{display:none}.form-status.is-error{color:#a32a16}.form-status.is-success{color:var(--forest)}.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.site-footer{padding-top:50px;padding-bottom:25px;display:grid;grid-template-columns:1fr auto;gap:32px}.site-footer .wordmark>span{font-size:1.8rem}.site-footer>div>p{font-size:.84rem;color:var(--muted);margin-top:18px}.footer-links{display:flex;align-items:center;gap:25px;font-size:.83rem}.footer-links a:hover{text-decoration:underline}.footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);padding-top:23px;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:.75rem}
dialog::backdrop{background:#0d1914df;backdrop-filter:blur(5px)}dialog{border:0;max-width:calc(100% - 32px);border-radius:8px;padding:0}dialog[open]{animation:show-dialog .2s ease}.dialog-close{position:absolute;z-index:5;right:14px;top:12px;width:42px;height:42px;border:0;background:white;border-radius:50%;font-size:1.8rem;line-height:1;color:var(--forest)}.gallery-dialog{width:min(1120px,calc(100% - 32px));background:var(--forest-dark);color:white;overflow:hidden}.gallery-dialog figure>img{width:100%;height:min(75vh,800px);object-fit:contain;background:#101a13}.gallery-dialog figcaption{text-align:center;line-height:1.5;padding:18px 65px;font-size:.95rem}.gallery-previous,.gallery-next{position:absolute;bottom:10px;background:none;border:1px solid #ffffff50;border-radius:50%;color:white;width:40px;height:40px;font-size:1.2rem}.gallery-previous{left:16px}.gallery-next{right:16px}.privacy-dialog{max-width:620px;padding:55px 38px 40px;background:var(--paper)}.privacy-dialog h2{font-size:2rem;margin-bottom:25px}.privacy-dialog p{color:var(--muted);margin-bottom:20px}.privacy-dialog a{overflow-wrap:anywhere;text-decoration:underline}.wp-admin-bar .site-header{margin-top:32px}@keyframes show-dialog{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.hero{margin-inline:auto}.site-header{padding-inline:22px}}
@media(max-width:1120px){.navigation{gap:20px}.site-header{padding-inline:30px}.wrap{width:calc(100% - 60px)}.hero-copy{padding:50px 30px 28px}.hero h1{font-size:4.2rem}.hero{grid-template-columns:48% 52%;min-height:580px}.hero-actions{gap:18px}.hero-actions .text-link{font-size:.8rem}.hero-signature{margin-top:35px}.transformation-grid{gap:45px}.approach{gap:45px}.contact-grid{gap:50px}.section-intro{max-width:310px}.trust-strip>div+div{padding-left:20px}.trust-strip{gap:15px}.section{padding-block:80px}}
@media(max-width:900px){.site-header{height:82px;position:relative;z-index:15;background:var(--paper)}.wordmark>span{font-size:1.8rem}.menu-toggle{display:flex;align-items:center;gap:10px;background:none;border:1px solid var(--line);border-radius:4px;padding:9px 13px;min-height:44px;font-size:.85rem}.menu-lines{width:16px;height:12px;border-top:1px solid;border-bottom:1px solid}.navigation{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);padding:20px 30px 28px;box-shadow:0 15px 20px #0b2b1820;align-items:stretch;gap:8px}.navigation.is-open{display:flex;flex-direction:column}.navigation .language{border-left:0;padding-left:0}.navigation>.button{align-self:flex-start;margin-top:7px}.hero{margin-inline:15px;grid-template-columns:1fr 1fr;min-height:575px}.hero h1{font-size:clamp(2.9rem,6.6vw,4rem)}.hero-copy{padding:40px 24px 25px}.hero-eyebrow{font-size:.75rem;margin-bottom:28px}.hero-description{font-size:.94rem}.hero-actions{align-items:flex-start;flex-direction:column}.hero-signature{margin-top:30px}.trust-strip{grid-template-columns:1fr 1fr;gap:20px}.trust-strip>div+div{padding-left:20px}.trust-strip>div:last-child{display:none}.section-heading{display:block;margin-bottom:32px}.section-intro{max-width:650px;margin-top:24px}.services-grid{gap:18px}.service h3{font-size:1.25rem}.service>p{font-size:.9rem}.service .text-link{font-size:.8rem}.transformation-grid{grid-template-columns:1fr;gap:35px}.transformation-copy>p:not(.eyebrow){max-width:600px}.transformation-copy h2{white-space:normal}.comparison{max-width:760px;aspect-ratio:4/3}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:28px 20px}.approach{grid-template-columns:.85fr 1fr;gap:30px}.approach-photo{min-height:660px}.approach-photo figcaption{left:15px;right:15px;bottom:15px;padding:15px;gap:12px}.approach-photo figcaption>span{font-size:1.8rem;padding-right:12px}.approach-photo figcaption p{font-size:.75rem}.approach h2{font-size:2.15rem;white-space:normal}.contact-grid{gap:30px;grid-template-columns:.9fr 1.15fr}.quote-form{padding:23px}.contact-copy h2{font-size:2.9rem}.form-row{grid-template-columns:1fr;gap:16px}.contact-detail .phone-link{font-size:1.5rem}.footer-links{flex-wrap:wrap;justify-content:flex-end;max-width:240px}}
@media(max-width:600px){html{scroll-padding-top:20px}.wrap{width:calc(100% - 40px)}.site-header{padding-inline:20px;height:80px}.wordmark>span{font-size:1.75rem}.wordmark small{font-size:.75rem;letter-spacing:.16em}.hero{grid-template-columns:1fr;margin-inline:10px;min-height:0;border-radius:6px}.hero-copy{padding:35px 23px 31px}.hero-eyebrow{font-size:.75rem;margin-bottom:25px}.hero h1{font-size:clamp(2.9rem,11vw,4rem);line-height:1.05}.hero-description{font-size:1rem;margin-top:22px;line-height:1.7;max-width:430px}.hero-actions{margin-top:25px;gap:22px;flex-direction:row;align-items:center}.hero-actions .button{padding:14px 18px;gap:16px}.hero-actions .text-link{font-size:.86rem}.hero-signature{display:none}.hero-photo{height:300px}.hero-photo>img{object-position:50% 50%}.hero-photo figcaption{left:20px;bottom:17px;font-size:.75rem}.trust-strip{padding-block:24px;gap:12px}.trust-strip>div{gap:8px}.trust-strip>div+div{padding-left:10px}.trust-icon{font-size:1.25rem;width:23px}.trust-strip strong{font-size:.77rem;line-height:1.45}.trust-strip p>span{font-size:.75rem}.section{padding-block:65px}.eyebrow{font-size:.75rem;margin-bottom:18px}h2{font-size:2.35rem;letter-spacing:-.045em}.section-intro{font-size:.95rem;margin-top:20px}.services-grid{grid-template-columns:1fr;gap:38px}.service-image{aspect-ratio:1.45}.service h3{font-size:1.5rem;margin-top:20px}.service>p{font-size:1rem;max-width:none}.service .text-link{font-size:.88rem;margin-top:18px}.transformation{padding-block:60px}.transformation-grid{gap:30px}.transformation-copy h2{white-space:pre-line}.comparison{border-radius:5px}.compare-note{font-size:.75rem}.gallery-grid{gap:27px 14px}.gallery-button{aspect-ratio:.86}.project h3{font-size:1rem;line-height:1.35}.project figcaption>span{font-size:.75rem;letter-spacing:.035em}.zoom-icon{width:28px;height:28px;font-size:1.1rem;right:10px;bottom:10px}.gallery-bottom{margin-top:30px}.video-section{padding-bottom:0}.project-video{max-height:550px;aspect-ratio:4/3}.approach{grid-template-columns:1fr;gap:35px}.approach-photo{min-height:380px;grid-row:2}.approach-photo>img{object-position:center}.approach-photo figcaption{padding:20px;gap:18px}.approach-photo figcaption>span{font-size:2.3rem;padding-right:20px}.approach-photo figcaption p{font-size:.85rem}.approach h2{font-size:2.35rem}.steps{margin-top:25px}.steps>li{padding:22px 0;gap:20px}.steps p{font-size:.98rem}.contact-section{padding:60px 0}.contact-grid{grid-template-columns:1fr;gap:35px}.contact-copy{padding:0}.contact-copy h2{font-size:3.3rem}.contact-intro{max-width:none;font-size:1rem}.contact-detail{margin-top:24px}.contact-detail .phone-link{font-size:1.8rem}.service-area{margin-top:25px;max-width:none;font-size:.88rem}.quote-form{padding:25px 20px}.form-row{grid-template-columns:1fr}.field-hint{font-size:.78rem}.quote-form label{font-size:.9rem}.privacy-note{font-size:.77rem}.site-footer{padding-top:38px;grid-template-columns:1fr;gap:28px}.footer-links{justify-content:flex-start;max-width:none;gap:22px;font-size:.84rem}.footer-bottom{flex-direction:column;gap:8px;font-size:.75rem}.gallery-dialog figcaption{font-size:.83rem}.privacy-dialog{padding:60px 23px 30px}.privacy-dialog h2{font-size:1.9rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Keep main copy and form controls legible on every screen. */
.service>p,.section-intro,.hero-description,.steps p{font-size:1rem}.wordmark small{font-size:.75rem}.quote-form input:not([type=file]),.quote-form select,.quote-form textarea{font-size:1rem}.hero-copy,.contact-copy{min-width:0}.contact-detail a{overflow-wrap:anywhere}

.hero-photo>img,.approach-photo>img{position:absolute;inset:0}

/* The supplied logo is displayed intact; CSS frames its original empty margins. */
.brand-logo{display:block;position:relative;flex:0 0 auto;width:240px;height:96px;overflow:hidden;border-radius:5px;background:#191919}
.brand-logo>img{position:absolute;max-width:none;width:160%;height:auto;left:50%;top:50%;transform:translate(-50%,-50%)}
.site-header{height:120px}
@media(max-width:1120px){.site-header .brand-logo{width:218px;height:88px}}
@media(max-width:900px){.site-header{height:102px}.site-header .brand-logo{width:204px;height:82px}}
@media(max-width:600px){.site-header{height:94px;gap:12px}.site-header .brand-logo{width:180px;height:74px}.site-footer .brand-logo{width:220px;height:90px}}
