/* V2.4 — formes de produits, configuration et composants communs */
body #nav .if-submenu-toggle{width:25px;margin-left:-8px;background:transparent;border:0;color:#aeb9c4;border-radius:0;box-shadow:none}
body #nav .if-submenu-toggle:hover{background:transparent;color:#55cdf4}
body #nav .if-submenu-toggle svg{display:block;width:13px;height:13px;transition:transform .15s}
body #nav .if-submenu-toggle[aria-expanded=true] svg{transform:rotate(180deg)}
body #nav>ul>li>a{font-weight:600;letter-spacing:0}
body #header .if-menu-toggle:after{content:'';width:18px;height:13px;border-top:2px solid currentColor;border-bottom:2px solid currentColor;background:linear-gradient(currentColor,currentColor) center/100% 2px no-repeat;border-radius:0;color:#e5edf4;font-size:0}
body #header .if-menu-toggle[aria-expanded=true]:after{content:'×';width:18px;height:22px;font-size:27px;line-height:22px;border:0;background:none}
body .if-configure-table{white-space:nowrap;font-size:11px!important;padding:7px 9px!important}
body .if-beach-heading{text-align:left;margin:0 0 25px}
body .if-beach-heading h1{margin:0}
body .if-beach-page{text-align:left}
body .if-model-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:30px 0 42px;text-align:center}
body .if-model-choice{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:15px;padding:18px 15px;border:1px solid #cbd6df!important;border-radius:5px;color:#152330;font-weight:700;text-decoration:none;background:#fff}
body .if-model-choice:hover,body .if-model-choice:focus-visible{border-color:#008fbe!important;box-shadow:0 0 0 1px #008fbe;color:#006c8f}
body .if-model-choice>img{width:100%;height:125px;object-fit:contain}
body .if-model-choice>span:last-child{font-size:16px}
body .if-model-section{margin:0 0 48px;padding-top:12px;scroll-margin-top:22px}
body .if-model-section>h2{font-size:27px;line-height:1.2;margin:0 0 8px;text-align:left}
body .if-model-section .if-model-description{font-size:14px!important;line-height:1.5;font-weight:400;color:#566778;text-align:left;margin:0 0 20px!important}
body .if-model-picture{display:block;max-width:960px;margin:0 auto 24px;padding:14px;border:1px solid #e0e6eb;border-radius:5px;background:#fff;cursor:zoom-in}
body .if-model-picture img{display:block;width:100%;height:auto;max-width:100%}
body .if-beach-page .if-price-scroll{margin:0}
body .if-beach-page .if-price-scroll table{margin:0!important}
body .if-beach-page .if-price-scroll tbody td:first-child{text-align:left;min-width:210px}
body .if-beach-page .if-price-scroll td:first-child h6{text-align:left}
body .if-accessory-thumb{position:relative;display:block;flex:none;overflow:hidden;width:90px;aspect-ratio:var(--crop-w)/var(--crop-h);background:#fff}
body .if-accessory-thumb img{position:absolute;max-width:none!important;width:calc(1181 / var(--crop-w) * 100%)!important;height:auto!important;left:calc(-1 * var(--crop-x) / var(--crop-w) * 100%);top:calc(-1 * var(--crop-y) / var(--crop-h) * 100%)}
body .if-model-choice .if-accessory-choice{width:190px;height:125px}
body .if-accessory-name .if-accessory-thumb{float:left;margin:0 16px 0 0;width:75px}
body .if-accessory-name h6{padding-top:13px}
body .if-expanded-model{display:block;max-width:100%;height:auto;margin:auto}
body .if-modal{width:min(1120px,calc(100% - 40px));max-height:calc(100dvh - 40px);padding:0;border:0;border-radius:7px;background:#fff;color:#172733;box-shadow:0 18px 70px #0005}
body .if-modal::backdrop{background:#101a28a8}
body .if-modal-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;border-bottom:1px solid #dfe6ed}
body .if-modal-head h2{margin:0;font-size:22px;line-height:1.3}
body .if-modal-close{display:flex;align-items:center;justify-content:center;width:38px;height:38px;min-height:0;flex:none;padding:0;background:#eef3f6;border:0;border-radius:4px;color:#172733;font-size:27px;cursor:pointer}
body .if-modal-close:hover{background:#dce8ef}
body .if-modal-body{padding:20px;overflow:auto}
body .if-template-frame{display:block;width:100%;height:min(640px,calc(100dvh - 160px));border:0;background:#fff}
body .if-config-page h1{font-size:33px;text-align:left;margin-bottom:28px}
body .if-config-layout{display:grid;grid-template-columns:minmax(0,1fr) 355px;gap:30px;align-items:start;text-align:left;margin-bottom:35px}
body .if-config-options{min-width:0;padding:25px;border:1px solid #d9e2e9;border-radius:6px;background:#fff}
body .if-config-options h2,body .if-config-summary h2{font-size:20px;line-height:1.35;margin:0 0 22px;color:#172b3a}
body .if-config-options table{display:block;width:100%;margin:0;border:0}
body .if-config-options tbody{display:block;width:100%}
body .if-config-options table .if-config-row{display:grid;grid-template-columns:135px minmax(0,1fr);gap:18px;align-items:center;padding:16px 0;border-bottom:1px solid #e3e9ee;background:#fff}
body .if-config-options table .if-config-row:first-child{padding-top:0}
body .if-config-options table .if-config-row:last-child{border-bottom:0;padding-bottom:0}
body .if-config-options table .if-config-row>td{display:block;width:auto;padding:0;background:transparent;border:0;text-align:left;vertical-align:middle;font-size:14px}
body .if-config-options table .if-config-row>td:first-child{padding:0}
body .if-config-options label.button{padding:0!important;margin:0!important;background:none!important;border:0!important;min-height:0;color:#425568!important;font-size:13px!important;text-align:left!important;line-height:1.5;font-weight:600}
body .if-config-options label img{display:none}
body .if-config-options :is(input,select){width:100%;min-height:45px;margin:0;border:1px solid #b9c9d6;border-radius:4px;background:#fff;color:#182f40;font-size:14px}
body .if-config-options :is(input,select):focus{border-color:#008fbe;outline:2px solid #009fe32b;outline-offset:1px}
body .if-config-summary{position:sticky;top:24px;padding:25px;border:1px solid #d3dfe8;border-top:3px solid #009fe3;border-radius:6px;background:#f3f7fa;color:#253b4d;text-align:left}
body .if-config-summary .if-config-description{font-size:15px;line-height:1.65;font-weight:500;color:#42586b;margin:0 0 23px}
body .if-config-summary dl{margin:0 0 25px}
body .if-config-summary dl>div{display:flex;justify-content:space-between;gap:20px;margin:12px 0;font-size:14px}
body .if-config-summary dt,body .if-config-summary dd{margin:0}
body .if-config-summary dd{white-space:nowrap;font-weight:650}
body .if-config-summary .if-config-total{border-top:1px solid #cedce6;padding-top:17px;margin-top:19px;align-items:baseline}
body .if-config-summary .if-config-total dd{font-size:27px;color:#152f43}
body .if-config-summary .if-config-add{display:flex;align-items:center;justify-content:center;width:100%;white-space:normal;text-align:center;background:#008ab5!important;border:0!important;border-radius:4px;min-height:48px;padding:13px 12px;font-size:13px;font-weight:700}
body .if-config-summary .if-config-add:hover{background:#006e94!important}
body .if-config-note{font-size:12px;line-height:1.6;color:#556d80;margin:14px 0 0}
body .if-config-form[aria-busy=true] .if-config-add{pointer-events:none;opacity:.55}
body .if-auth-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:28px;max-width:940px;margin:30px auto 50px;align-items:start;text-align:left}
body .if-auth-card,body .if-account-card{padding:30px;border:1px solid #d8e2e9;border-radius:6px;background:#fff;text-align:left}
body .if-auth-card h2,body .if-account-card h2{font-size:22px;margin:0 0 23px}
body .if-auth-card label,body .if-account-card label{display:block;color:#30495d;font-size:13px;font-weight:600;margin-bottom:7px}
body .if-auth-card .if-field,body .if-account-card .if-field{margin-bottom:20px}
body :is(.if-auth-card,.if-account-card) :is(input:not([type=checkbox]),select){width:100%;height:46px;margin:0;padding:10px 12px;border:1px solid #b9c9d6;border-radius:4px;font-size:14px}
body :is(.if-auth-card,.if-account-card) :is(input,select):focus{outline:2px solid #009fe32b;border-color:#008ebd}
body .if-auth-card .button,body .if-account-card .button{border-radius:4px;font-size:14px;min-height:46px;padding:12px 18px}
body .if-auth-card .if-primary{width:100%;background:#008bb6;color:#fff}
body .if-auth-card .if-auth-alternative{margin-top:24px;border-top:1px solid #dce5ed;padding-top:21px}
body .if-auth-card details>summary{font-size:13px;color:#00799e;cursor:pointer;list-style:none;text-decoration:underline;text-underline-offset:3px}
body .if-auth-card details[open]>summary{margin-bottom:20px}
body .if-auth-intro{background:#f3f7fa}
body .if-auth-intro p{font-size:14px;line-height:1.75;color:#4d6477}
body .if-auth-privacy{font-size:12px;line-height:1.6;color:#607587;margin-top:18px}
body .if-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}
body .if-field-wide{grid-column:1/-1}
body .if-notice{padding:14px 17px;margin:18px 0;border-left:3px solid #009fe3;background:#f0f7fa;font-size:14px;color:#263e52;text-align:left}
body .if-notice-error{border-color:#b93356;background:#fff3f6}
@media(max-width:900px){body .if-config-layout{grid-template-columns:minmax(0,1fr) 315px;gap:20px}body .if-config-options{padding:21px}body .if-config-options table .if-config-row{grid-template-columns:1fr;gap:8px}body .if-model-choice>img{height:100px}body .if-model-choice .if-accessory-choice{width:145px;height:100px}}
@media(max-width:650px){body #nav .if-submenu-toggle{width:46px;height:46px;margin:0}body #nav .if-submenu-toggle svg{width:17px;height:17px}body .if-model-picker{gap:9px;margin:24px 0 30px}body .if-model-choice{padding:10px 6px;gap:10px}body .if-model-choice>img{height:65px}body .if-model-choice>span:last-child{font-size:12px;line-height:1.5}body .if-model-choice .if-accessory-choice{width:90px;height:65px}body .if-model-section>h2{font-size:23px}body .if-model-picture{padding:6px;margin-bottom:18px}body .if-beach-page .if-price-scroll table{min-width:640px}body .if-accessory-name .if-accessory-thumb{width:60px;margin-right:10px}body .if-modal{width:calc(100% - 20px);max-height:calc(100dvh - 20px)}body .if-modal-head{padding:14px 16px}body .if-modal-head h2{font-size:18px}body .if-modal-body{padding:12px}body .if-config-page h1{font-size:27px;margin-bottom:23px}body .if-config-layout{grid-template-columns:1fr;gap:20px}body .if-config-options{padding:20px}body .if-config-summary{position:static;padding:22px}body .if-auth-layout{grid-template-columns:1fr;gap:20px;margin-top:22px}body .if-auth-card,body .if-account-card{padding:22px}body .if-field-grid{grid-template-columns:1fr;gap:0}body .if-field-wide{grid-column:auto}}
@media(prefers-reduced-motion:reduce){body #nav .if-submenu-toggle svg{transition:none}}

/* Account and checkout pages */
body .if-account-heading{max-width:940px;margin:0 auto 30px;text-align:left}body .if-account-heading h1{font-size:clamp(30px,4vw,42px);line-height:1.2;letter-spacing:-1px;margin:0 0 14px}body .if-account-heading p{font-size:16px;color:#576d7b;line-height:1.7}body .if-account-grid{display:grid;grid-template-columns:1.1fr .9fr;max-width:940px;gap:28px;margin:0 auto 35px;align-items:start}body .if-account-card{border-radius:12px;padding:32px}body .if-account-card p{line-height:1.7;color:#536a79}body .if-account-card .if-account-field{margin-bottom:20px}body .if-account-field label{line-height:1.5}body .if-account-field input,body .if-account-field select{background:#fff;border-radius:6px}body .if-account-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}body .if-account-wide{max-width:940px;margin:auto}body .if-account-narrow{max-width:580px;margin:auto}body .if-account-narrow h1{font-size:28px;line-height:1.3;margin-bottom:25px}body .if-account-card .if-account-privacy,body .if-account-card .if-account-help{font-size:12px;color:#637a88;line-height:1.7;margin:20px 0}body .if-account-new{background:#f0f6f8;border-color:#e0e9ed}body .if-account-new p{font-size:15px}body .if-account-mark{display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:800;color:#008aaf;border:1px solid #9bd3df;width:68px;height:68px;border-radius:15px;margin-bottom:26px}body .if-account-new .button{margin:12px 0}body .if-account-recovery{border-top:1px solid #dce5eb;padding-top:20px;margin-top:26px}body .if-account-recovery summary{color:#007da4;cursor:pointer;font-weight:650;font-size:14px}body .if-account-recovery[open] summary{margin-bottom:20px}body .if-account-recovery p{font-size:13px}body .if-account-alt{display:inline-block;margin:15px;font-size:13px}body .if-alert,body .if-success{padding:15px 18px;border-radius:7px;background:#fff2f5;border:1px solid #f0cfda;color:#842b47;font-size:14px;line-height:1.7;text-align:left;margin-bottom:22px}body .if-success{background:#eff8f4;border-color:#c5e2d6;color:#24634b}body .if-config-caption{font-size:11px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:#007d9f;display:block;margin-bottom:12px}body .if-config-file-note{font-size:12px;line-height:1.7;color:#5d7483;margin:16px 0 0}body .if-checkbox-label{font-size:12px;line-height:1.7;display:block;margin:20px 0}body .if-checkbox-label input[type=checkbox]{appearance:auto;position:static;opacity:1;width:16px;height:16px;margin-right:7px}body .if-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media(max-width:700px){body .if-account-grid{grid-template-columns:1fr}body .if-account-fields{grid-template-columns:1fr}body .if-account-card{padding:23px}body .if-account-alt{margin-left:0;display:block}body .if-account-heading p{font-size:14px}}

body .if-modal-close{color:#172733!important;background:#eef3f6!important;box-shadow:none!important}body .if-template-frame{height:min(480px,calc(100dvh - 160px))}body .if-config-options>h2{font-size:27px;line-height:1.3}body:has(.if-banner-page,.if-account-page,.if-config-page) #main{padding-top:40px}body .if-account-page .if-account-field>label{padding-bottom:0}body .if-model-choice .if-accessory-choice img{clip-path:inset(0 15px 0 0)}

body #main .if-account-heading{max-width:940px;margin:0 auto 28px}body #main .if-account-heading h1{font-size:38px;line-height:1.2;margin-bottom:14px}body #main .if-account-heading p{font-size:16px;font-style:normal;line-height:1.7;margin:0}body #main .if-account-card h2{font-size:25px;line-height:1.3;margin-bottom:24px}body #main .if-account-card p{font-size:14px;line-height:1.75}body #main .if-account-card .if-account-privacy,body #main .if-account-card .if-account-help{font-size:12px}body #main .if-account-field input,body #main .if-account-field select{border-radius:6px}body #main .if-config-summary h2{font-size:28px;line-height:1.25;margin:0 0 24px}body #main .if-config-options>h2{font-size:27px}body #main .if-order-summary>h2{font-size:24px}@media(max-width:650px){body #main .if-account-heading h1{font-size:30px}body #main .if-account-heading p{font-size:14px}body #main .if-account-card h2{font-size:23px}}

body .if-secondary-button{color:#193543!important;background:#fff!important;border:1px solid #bcced7!important;box-shadow:none!important}body .if-secondary-button:hover{background:#edf5f8!important}body .if-banner-remove,body .if-remove-item{color:#466171!important;background:transparent!important;box-shadow:none!important}body .if-banner-remove:hover,body .if-remove-item:hover{color:#007b9e!important}

body #main .if-accessory-thumb img{width:calc(1181 / var(--crop-w) * 100%)!important;height:auto!important;max-height:none!important;max-width:none!important;aspect-ratio:auto!important;object-fit:fill!important;clip-path:none!important}body #main .if-cart-group>h2{font-size:24px;line-height:1.3;margin:20px 0 12px}body #main .if-config-add,body #main .if-checkout-button,body #main .if-account-card button.button{background:#007c9f!important;color:#fff!important}body #main .if-config-add:hover,body #main .if-checkout-button:hover,body #main .if-account-card button.button:hover{background:#006580!important}
