.services{padding:120px 0 100px;overflow:hidden}.services-intro{max-width:680px;color:#a6b2c4;font-size:21px;line-height:1.6;margin:28px 0 0}.services .wheel-stage{--wheel-card-width:min(88vw,1160px)}.services .portfolio-wheel{gap:34px;align-items:stretch;padding-top:34px;padding-bottom:40px}.services .wheel-item{height:auto}.services .wheel-card{transform:none;opacity:.65;border:1px solid #eaf2ff88;border-radius:38px;box-shadow:0 22px 70px #0004}.services .wheel-card.is-selected{opacity:1;border-color:#b8d5fc}.service-card{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:42px;padding:44px;min-height:560px;background:linear-gradient(135deg,#ffffff,#eef2f8);color:#1d1d1f}.service-card-copy{min-width:0;padding:32px 0;display:flex;flex-direction:column;justify-content:center;height:100%}.service-card-copy .eyebrow{font-size:10px;margin:0 0 26px;color:#57759b;letter-spacing:.14em;line-height:1.6}.service-card-copy h3{font-size:clamp(34px,4.4vw,62px);line-height:1.05;letter-spacing:-.055em;font-weight:600;margin:0 0 28px;color:#1d1d1f;overflow-wrap:anywhere}.service-card-copy p{font-size:clamp(17px,1.65vw,21px);line-height:1.65;color:#626973;margin:0 0 34px;white-space:normal;overflow-wrap:anywhere}.service-card-link{display:flex;align-items:center;gap:14px;font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:#28629e;margin-top:8px}.service-card-link::before{content:"";width:36px;height:1px;background:#70a9e9}.service-card-link>span{font-size:18px;letter-spacing:0}.service-card-visual{position:relative;min-width:0;min-height:460px;border-radius:28px;background:#132237}.service-card-visual>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;border-radius:28px}.service-card-visual::after{content:"";position:absolute;inset:0;border-radius:28px;box-shadow:inset 0 0 0 1px #ffffff30;pointer-events:none}.service-card-placeholder{display:grid;place-content:center;text-align:center;min-height:460px;height:100%;font-size:76px;color:#b9d5fa;font-weight:600;letter-spacing:-.05em}.service-card-placeholder span{font-size:12px;letter-spacing:.2em;margin-top:8px}@media(max-width:1000px){.service-card{gap:30px;padding:32px;min-height:520px}.service-card-visual{min-height:420px}.service-card-copy{padding:20px 0}}@media(max-width:700px){.services .wheel-stage{--wheel-card-width:calc(100vw - 40px)}.services .portfolio-wheel{gap:20px;padding-top:22px;padding-bottom:32px}.services .wheel-card{border-radius:28px}.service-card{grid-template-columns:1fr;gap:24px;padding:26px;min-height:0}.service-card-copy{height:auto;padding:10px 0 0}.service-card-copy .eyebrow{font-size:9px;margin-bottom:18px}.service-card-copy h3{font-size:38px;margin-bottom:20px}.service-card-copy p{font-size:17px;line-height:1.6;margin-bottom:24px}.service-card-link{font-size:10px}.service-card-visual{height:320px;min-height:320px}.service-card-placeholder{min-height:320px}.service-card-visual>img,.service-card-visual::after{border-radius:22px}}.service-page .gallery-opening{min-height:100svh}.service-rates{padding-top:70px;padding-bottom:100px}.service-price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:48px 0}.service-price{padding:30px;border:1px solid #c4ddff30;border-radius:24px;background:#0b1626c9}.service-price h3{font-size:25px;line-height:1.25;margin:0 0 20px;color:#f5f5f7;overflow-wrap:anywhere}.service-price-amount{color:#a5caff;font-size:28px;line-height:1.2;margin:0 0 20px;overflow-wrap:anywhere}.service-price-detail,.service-price-empty{color:#bbc6d8;font-size:17px;line-height:1.65;margin:0;overflow-wrap:anywhere}.service-price-empty{grid-column:1/-1}.service-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}body[data-page="service"]{--nav-height:64px}.service-page .gallery-opening-copy{max-width:920px}.service-editor-price{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:22px;padding:18px;border:1px solid #e1e5eb;border-radius:12px}.service-editor-price .price-detail{grid-column:1/-1}.service-editor-price textarea{min-height:90px}.service-editor-price button{justify-self:start}.service-editor textarea{min-height:160px}.service-editor .design-image-field{margin:24px 0}.service-editor .editor-actions{margin-top:25px}.services-admin #service-section-settings{width:100%;margin-top:10px;font-size:12px}@media(max-width:600px){.services{padding:78px 0}.services-intro{font-size:18px}.service-rates{padding-top:45px;padding-bottom:70px}.service-price-grid{grid-template-columns:1fr;gap:18px}.service-price{padding:24px}.service-actions{align-items:flex-start;flex-direction:column}.service-editor-price{grid-template-columns:1fr}.service-editor-price .price-detail{grid-column:auto}}

.site-entering body[data-page="service"] .gallery-opening-copy{animation:page-content-enter 1.1s .2s cubic-bezier(.16,1,.3,1) both}@media(prefers-reduced-motion:reduce){.site-entering body[data-page="service"] .gallery-opening-copy{animation:none}}

@media(max-width:700px){.services-admin .sidebar-title{flex-wrap:wrap}.services-admin #service-section-settings{flex-basis:100%}}

.service-price-options{margin-top:26px;padding-top:22px;border-top:1px solid #bdd6f52b}.service-price-options h4{font-size:13px;letter-spacing:.08em;color:#afcdf5;margin:0 0 18px}.service-price-options ul{list-style:none;padding:0;margin:0}.service-price-options li{margin:16px 0}.service-price-options li>div{display:flex;justify-content:space-between;gap:20px;font-size:15px}.service-price-options li strong{font-weight:500}.service-price-options li span{color:#a5caff;text-align:right}.service-price-options li p{color:#a2b0c5;font-size:14px;line-height:1.5;margin:8px 0 0}.service-editor-options{grid-column:1/-1}.service-editor-options h4{margin:0 0 14px}.service-editor-option{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:18px;margin:14px 0;background:#f4f6fa;border-radius:10px}.service-editor-option .price-detail{grid-column:1/-1}@media(max-width:600px){.service-editor-option{grid-template-columns:1fr}.service-editor-option .price-detail{grid-column:auto}}

.service-editor .service-editor-price textarea{min-height:90px}

/* The white band follows the content height; only its inner content slides. */
.services .wheel-stage{background:#f5f5f7;color:#1d1d1f}
.services .wheel-card,.services .wheel-card.is-selected{background:transparent;border:0;border-radius:0;box-shadow:none;transform:none}

/* Domain-specific palettes share MIH's typography, logo and page transitions. */
.service-page{--service-accent:#346ca4;--service-soft:#c0ddff;--service-surface:#eef3f8;--service-ink:#17283c;--service-tone:#687586;--service-glow:#406b9a45;background:var(--service-surface);padding-bottom:84px}
.service-theme-mariages{--service-accent:#947147;--service-soft:#f8e3b2;--service-surface:#f9f3ef;--service-ink:#59424b;--service-tone:#8a747a;--service-glow:#b9947350}
.service-theme-concerts{--service-accent:#6559bf;--service-soft:#c9c9ff;--service-surface:#f1f0f8;--service-ink:#28213c;--service-tone:#77718a;--service-glow:#6855b365}
.service-theme-conferences{--service-accent:#306285;--service-soft:#b7daec;--service-surface:#eef3f5;--service-ink:#233944;--service-tone:#667983;--service-glow:#24527855}
.service-theme-portraits-shootings{--service-accent:#947352;--service-soft:#efdbc0;--service-surface:#f5f2ed;--service-ink:#44392e;--service-tone:#7e7469;--service-glow:#ad8e6960}
.service-theme-creation-visuelle{--service-accent:#7165a9;--service-soft:#dfd1ff;--service-surface:#f4f1f9;--service-ink:#3f3552;--service-tone:#7a718c;--service-glow:#7460a35a}
.service-theme-clips{--service-accent:#996086;--service-soft:#ffd0ef;--service-surface:#f7f0f6;--service-ink:#452b40;--service-tone:#846c80;--service-glow:#a23c8655}
.service-theme-teasers{--service-accent:#91683c;--service-soft:#ffdda5;--service-surface:#f7f3ed;--service-ink:#453b30;--service-tone:#827568;--service-glow:#9b6c2b55}
.service-theme-podcasts-interviews{--service-accent:#367878;--service-soft:#b7efea;--service-surface:#eef5f4;--service-ink:#254344;--service-tone:#648180;--service-glow:#27757855}
.service-theme-reseaux-sociaux{--service-accent:#526eb4;--service-soft:#c7d7ff;--service-surface:#f0f3fa;--service-ink:#2b3b5a;--service-tone:#6d7c99;--service-glow:#475ecf55}
.service-theme-documentaires{--service-accent:#577563;--service-soft:#d1e4c4;--service-surface:#f0f3ed;--service-ink:#34433a;--service-tone:#727f73;--service-glow:#47654855}
.service-hero{position:relative;display:grid;place-items:center;min-height:100svh;padding:calc(var(--nav-height) + 55px) 32px 145px;isolation:isolate;text-align:center;overflow:hidden;background:#132133}
.service-hero-image{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover}
.service-hero-shade{position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,#03081280 0%,#03081280 45%,#030812ad 75%,var(--service-surface) 100%),linear-gradient(100deg,var(--service-glow),transparent)}
.service-hero-copy{max-width:1000px;margin:auto}.service-emblem{display:block;width:110px;height:110px;object-fit:contain;margin:0 auto 26px}
.service-hero .eyebrow{color:#e5edf7;font-size:11px;letter-spacing:.24em;margin:0 0 25px;line-height:1.8}
.service-hero h1{color:var(--service-soft);font-size:clamp(52px,8.5vw,128px);line-height:1.05;letter-spacing:-.055em;font-weight:600;margin:0 0 28px;text-wrap:balance;overflow-wrap:anywhere;text-shadow:0 8px 35px #0005}
.service-theme-mariages .service-hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;letter-spacing:-.045em;font-size:clamp(66px,10vw,150px)}
.service-hero-signature{color:#f5f5f7;font-size:clamp(17px,2vw,23px);line-height:1.5;margin:0 0 38px;letter-spacing:.05em}.service-hero .text-link{color:#fff;font-size:16px}
.service-rates.section-shell{position:relative;z-index:2;width:calc(100% - 64px);max-width:1200px;margin:-70px auto 0;padding:68px;border:1px solid #fff;border-radius:38px;background:#fffffff5;color:var(--service-ink);box-shadow:0 24px 70px #172b4910}
.service-presentation{max-width:800px;margin-bottom:68px}.service-page .eyebrow{color:var(--service-accent)}.service-hero .eyebrow{color:#e5edf7}
.service-presentation .gallery-copy{color:var(--service-tone);font-size:clamp(18px,2vw,23px);line-height:1.7;margin:22px 0 0;max-width:none}
.service-rates .section-heading h2{color:var(--service-ink);font-size:clamp(38px,5vw,66px);letter-spacing:-.055em}.service-rates .silver-text{background:none;-webkit-text-fill-color:currentColor;color:var(--service-accent)}
.service-price{background:var(--service-surface);border:1px solid color-mix(in srgb,var(--service-accent) 15%,transparent);box-shadow:none}
.service-price h3{color:var(--service-ink)}.service-price-amount{color:var(--service-accent)}.service-price-detail,.service-price-empty{color:var(--service-tone)}
.service-price-options{border-color:color-mix(in srgb,var(--service-accent) 18%,transparent)}.service-price-options h4,.service-price-options li span{color:var(--service-accent)}.service-price-options li p{color:var(--service-tone)}
.service-page .pill-link{background:var(--service-ink);color:#fff}.service-page .service-actions .text-link{color:var(--service-accent)}
.site-entering body[data-page="service"] .service-hero-copy{animation:page-content-enter 1.1s .2s cubic-bezier(.16,1,.3,1) both}
@media(max-width:700px){.service-hero{padding:calc(var(--nav-height) + 32px) 24px 110px}.service-emblem{width:90px;height:90px}.service-hero .eyebrow{font-size:9px;letter-spacing:.18em}.service-rates.section-shell{width:calc(100% - 28px);padding:32px 24px;margin-top:-54px;border-radius:28px}.service-presentation{margin-bottom:42px}.service-price-grid{margin:32px 0}.service-page{padding-bottom:54px}}
@media(orientation:landscape) and (max-height:600px){.service-hero{padding:90px 32px 110px;min-height:100svh}.service-emblem{width:65px;height:65px;margin-bottom:16px}.service-hero h1{font-size:58px}.service-theme-mariages .service-hero h1{font-size:72px}.service-hero-signature{margin-bottom:22px}}
@media(prefers-reduced-motion:reduce){.site-entering body[data-page="service"] .service-hero-copy{animation:none}}

/* Dark tariff panels, with a light wedding universe. */
.service-page,.service-footer{--service-surface:#111c2b;--service-panel:#172334;--service-card:#202d40;--service-tone:#bec9d8;--service-text:#f5f5f7;--service-price-accent:var(--service-soft);--service-border:#ffffff16}
.service-theme-concerts{--service-surface:#161326;--service-panel:#201b33;--service-card:#2d2742;--service-tone:#c7bfd9}
.service-theme-conferences{--service-surface:#14232b;--service-panel:#1b2e39;--service-card:#263d49;--service-tone:#bdced6}
.service-theme-portraits-shootings{--service-surface:#221e1b;--service-panel:#2b2622;--service-card:#38312b;--service-tone:#d0c5b9}
.service-theme-creation-visuelle{--service-surface:#211a2d;--service-panel:#2b233b;--service-card:#382e49;--service-tone:#cec4df}
.service-theme-clips{--service-surface:#261a26;--service-panel:#312331;--service-card:#402e40;--service-tone:#d7c2d2}
.service-theme-teasers{--service-surface:#251f17;--service-panel:#31281e;--service-card:#403426;--service-tone:#d7c7b4}
.service-theme-podcasts-interviews{--service-surface:#152525;--service-panel:#1d3131;--service-card:#294040;--service-tone:#bfd7d3}
.service-theme-reseaux-sociaux{--service-surface:#182238;--service-panel:#212e47;--service-card:#2c3a55;--service-tone:#c0cce0}
.service-theme-documentaires{--service-surface:#1a241d;--service-panel:#243029;--service-card:#303e34;--service-tone:#c6d3c7}
.service-theme-mariages{--service-surface:#f9f3ef;--service-panel:#fffaf7;--service-card:#f6eee8;--service-tone:#8a747a;--service-text:#59424b;--service-price-accent:#947147;--service-border:#94714725}
.service-rates.section-shell{background:var(--service-panel);border-color:var(--service-border);color:var(--service-text);box-shadow:0 24px 70px #0002}
.service-rates .section-heading h2,.service-price h3{color:var(--service-text)}.service-rates .silver-text,.service-rates .eyebrow,.service-price-amount{color:var(--service-price-accent)}
.service-price{background:var(--service-card);border-color:var(--service-border)}.service-price-options{border-color:var(--service-border)}.service-price-options h4,.service-price-options li span{color:var(--service-price-accent)}
.service-page .pill-link{background:var(--service-soft);color:var(--service-ink)}.service-page .service-actions .text-link{color:var(--service-price-accent)}

.service-card-copy:hover .service-card-link{color:#104c91}.service-card-visual>a{display:block;position:absolute;inset:0}.service-card-visual>a>img{width:100%;height:100%;object-fit:cover;border-radius:28px}
.service-card-visual:has(.service-film){display:flex;align-items:center;justify-content:center;background:transparent}.service-card-visual:has(.service-film)::after{display:none}
.service-film{width:100%;margin:0 auto 28px;max-width:880px}.service-film-player{position:relative;width:100%;background:#090c12;overflow:hidden;border-radius:22px;box-shadow:0 14px 45px #0003}
.service-film-player>iframe,.service-film-player>video{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:contain;display:block}
.service-film figcaption{font-size:12px;line-height:1.5;margin-top:12px;letter-spacing:.025em;color:var(--service-soft,#687586);text-align:center}
.service-card-visual .service-film{margin:0;width:100%}.service-card-visual .service-film figcaption{color:#687586}.service-card-visual .service-film--portrait{max-width:235px}
@media(max-width:700px){.service-card-visual>a>img{border-radius:22px}.service-card-visual .service-film--portrait{max-width:150px}.service-film-player{border-radius:16px}}

/* Every illustration shares a 4:5 frame, with silent non-interactive video loops. */
.service-card-visual,.service-card-visual:has(.service-film){width:min(100%,368px);height:auto;min-height:0;aspect-ratio:4/5;justify-self:center;align-self:center;background:#101723;overflow:hidden}
.service-card-visual .service-film{position:absolute;inset:0;width:100%;max-width:none;height:100%;margin:0}
.service-film-player{aspect-ratio:4/5;height:100%;border-radius:24px}
.service-film-player>video{object-fit:cover;pointer-events:none}
.service-card-visual::after{border-radius:24px}.service-card-visual>a>img{border-radius:24px}
@media(max-width:700px){.service-card-visual,.service-card-visual:has(.service-film){width:min(100%,256px);height:auto;min-height:0}.service-film-player,.service-card-visual>a>img,.service-card-visual::after{border-radius:22px}}

/* Full-width slides: text on the left, the visual fills the right half. */
.services .wheel-stage{--wheel-card-width:100%}.services .portfolio-wheel{padding:0;gap:0}
.services .service-card{grid-template-columns:1fr 1fr;gap:0;padding:0;min-height:840px}
.services .service-card-copy{padding:54px clamp(32px,6vw,110px);height:100%;min-height:840px}
.services .service-card-visual,.services .service-card-visual:has(.service-film){width:100%;height:100%;aspect-ratio:auto;min-height:840px;max-width:none;border-radius:0;align-self:stretch;justify-self:stretch}
.services .service-film-player{height:100%;aspect-ratio:auto;border-radius:0;box-shadow:none}
.services .service-card-visual>a>img,.services .service-card-visual::after{border-radius:0}
.service-loop-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0}.service-loop-fields input:disabled{opacity:.45}
@media(max-width:700px){.services .service-card{grid-template-columns:1fr;grid-template-rows:1fr 480px;min-height:0}.services .service-card-copy{padding:36px 28px;min-height:0}.services .service-card-visual,.services .service-card-visual:has(.service-film){height:100%;min-height:480px}.service-loop-fields{grid-template-columns:1fr}}

/* Show only the video frame once its initial seek is ready. */
.service-film-player>video{opacity:0;transition:opacity .25s ease}.service-film-player>video[data-ready="1"]{opacity:1}

/* Keep design and portrait photographs intact; anchor the concert video at the top. */
.services .service-card[data-service-theme="portraits-shootings"] .service-card-visual,
.services .service-card[data-service-theme="creation-visuelle"] .service-card-visual{background:#f5f5f7}
.services .service-card[data-service-theme="portraits-shootings"] .service-card-visual>a>img,
.services .service-card[data-service-theme="creation-visuelle"] .service-card-visual>a>img{object-fit:contain}
.services .service-card[data-service-theme="concerts"] .service-film-player>video{object-position:center top}

/* Full hero backgrounds share the same overlay and foreground as photo heroes. */
.service-hero>.service-film--background{position:absolute;z-index:-2;inset:0;width:100%;height:100%;max-width:none;margin:0;pointer-events:none}
.service-hero>.service-film--background .service-film-player{width:100%;height:100%;aspect-ratio:auto;border-radius:0;box-shadow:none;background:transparent}
.service-hero>.service-film--background video{object-fit:cover;border-radius:0}
.service-theme-concerts .service-hero>.service-film--background video{object-position:center top}

/* Remove encoded side bars in Clips, and letterboxing in the wedding film. */
.service-theme-clips .service-hero>.service-film--background video{object-position:center top;transform:scale(1.35);transform-origin:center top}
.service-theme-mariages .service-hero>.service-film--background video{object-position:center top;height:130%;top:-13%}
.service-footer{width:100%;max-width:none;margin:0;background:var(--service-surface);color:var(--service-tone)}
.service-footer .footer-brand>span{color:var(--service-text)}
.service-page-nav{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:1200px;margin:44px auto 0;padding:0 32px}
.service-page-neighbor{display:flex;flex-direction:column;gap:12px;padding:24px;border:1px solid var(--service-border);border-radius:20px;background:var(--service-panel);color:var(--service-text);transition:background .2s ease}
.service-page-neighbor:last-child{text-align:right;align-items:flex-end}
.service-page-neighbor>span{font-size:13px;color:var(--service-price-accent)}
.service-page-neighbor>strong{font-size:20px;font-weight:500;overflow-wrap:anywhere}
.service-page-neighbor:not(.is-disabled):hover{background:var(--service-card)}
.service-page-neighbor.is-disabled{opacity:.3}
@media(max-width:700px){.service-page-nav{gap:12px;padding:0 14px;margin-top:28px}.service-page-neighbor{padding:18px 14px;border-radius:16px}.service-page-neighbor>strong{font-size:16px}}

.service-theme-portraits-shootings .service-hero-image{object-position:center top}

/* A longer, warm wedding fade avoids the abrupt dark-to-white band. */
.service-theme-mariages .service-hero-shade{background:linear-gradient(180deg,rgba(249,243,239,0) 38%,rgba(249,243,239,.04) 56%,rgba(249,243,239,.13) 70%,rgba(249,243,239,.3) 82%,rgba(249,243,239,.57) 92%,#f9f3ef 100%),linear-gradient(180deg,#03081275 0%,#03081270 45%,#03081238 75%,#03081200 100%),linear-gradient(100deg,#b9947320,transparent)}
