:root{--accent: #0F6B63;--accent-dark: #0A4A44;--tint: #E3F1EE;--ink: #1D2A2A;--ink-2: #33443F;--muted: #4A5C58;--line: #E1E8E6;--field: #C9D3D0;--soft: #F2F6F5;--pending-bg: #FDF1DE;--pending-ink: #7A4B0B;--pending-line: #C98A2E;--font-titre: "Plus Jakarta Sans", system-ui, sans-serif;--font-texte: "Plus Jakarta Sans", system-ui, sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:#fff;color:var(--ink);font-family:var(--font-texte);font-size:16px;line-height:1.5}img{max-width:100%;display:block}a{color:var(--accent)}a:hover{color:var(--accent-dark)}button{font-family:inherit}h1,h2{font-family:var(--font-titre);letter-spacing:-.3px}h1{margin:0;font-size:28px;line-height:1.15;font-weight:800}h2{margin:0;font-size:20px;font-weight:800}.muted{color:var(--muted);margin:0}.small{font-size:13px}.center{text-align:center}.text{margin:0;font-size:15px;line-height:1.65;color:var(--ink-2);white-space:pre-line}.row-between{display:flex;justify-content:space-between;align-items:center;gap:12px}.loading{padding:80px 20px;text-align:center;color:var(--muted)}.error{margin:0;padding:12px 14px;border-radius:12px;background:#fce9e7;color:#8a1f12;font-size:14px}.warn{color:var(--pending-ink)}.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.btn{display:flex;align-items:center;justify-content:center;min-height:54px;padding:0 20px;border:none;border-radius:14px;background:var(--accent);color:#fff;font-size:16px;font-weight:800;text-decoration:none;cursor:pointer}.btn:hover{background:var(--accent-dark);color:#fff}.btn:disabled{opacity:.6;cursor:default}.btn-outline{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 18px;border:1px solid var(--accent);border-radius:14px;background:#fff;color:var(--accent);font-size:15px;font-weight:700;text-decoration:none;cursor:pointer}.btn-outline.wide{width:100%;margin-top:12px}.link{align-self:flex-start;min-height:44px;padding:0;border:none;background:none;color:var(--accent);font-size:14px;font-weight:700;cursor:pointer}.pill{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;background:var(--accent);color:#fff;font-weight:700;font-size:14px;text-decoration:none}.pill:hover{color:#fff;background:var(--accent-dark)}.grow{flex:1}label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600}input,select,textarea{width:100%;min-height:48px;padding:0 14px;border:1px solid var(--field);border-radius:12px;font:inherit;font-size:16px;color:var(--ink);background:#fff}textarea{padding:12px 14px;line-height:1.5;resize:vertical}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.help{font-size:12px;font-weight:500;color:var(--muted)}.label{font-size:14px;font-weight:700}.check{flex-direction:row;align-items:center;gap:10px;min-height:48px;padding:0 14px;border:1px solid var(--line);border-radius:12px;font-size:15px}.check.between{justify-content:space-between}.check input{width:20px;min-height:20px;height:20px;padding:0;accent-color:var(--accent);flex-shrink:0}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.site-header{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 20px;background:#fffffff5;border-bottom:1px solid var(--line)}.brand{font-family:var(--font-titre);font-weight:800;font-size:17px}.logo{height:40px;width:auto}.wrap{max-width:760px;margin:0 auto}.ph{display:block;padding:0;border:none;background:var(--soft);border-radius:12px;overflow:hidden;cursor:zoom-in;position:relative}.ph img{width:100%;height:100%;object-fit:cover}.gallery-hero{display:flex;flex-direction:column;gap:6px;padding:12px 12px 0}.ph-main{height:260px;border-radius:16px}.thumbs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.thumbs .ph{height:86px}.more{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#141e1e8c;color:#fff;font-weight:700;font-size:14px}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:12px 12px 0}.gallery-grid .ph{height:150px}.gallery-grid .ph:first-child{grid-column:span 2;height:220px}.intro{padding:22px 20px 8px;display:flex;flex-direction:column;gap:10px}.addr{display:flex;align-items:center;gap:8px;min-height:44px;font-size:14px;font-weight:600;text-underline-offset:3px}.addr svg{flex-shrink:0}.price{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;padding:14px 16px;border-radius:14px;background:var(--soft)}.price strong{font-size:24px;font-weight:800}.price span{font-size:14px;color:var(--muted)}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.chips li{padding:6px 12px;border-radius:999px;background:var(--tint);color:var(--ink-2);font-size:13px;font-weight:600}.block{padding:26px 20px 8px;display:flex;flex-direction:column;gap:14px}.sync{font-size:12px;font-weight:700;color:var(--accent)}.photo-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.photo-list figure{margin:0;cursor:zoom-in}.photo-list img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:12px}.photo-list figcaption{margin-top:6px;font-size:13px;color:var(--ink-2);line-height:1.4}.map{width:100%;height:260px;border:0;border-radius:14px;background:var(--soft)}.map.tall{height:380px}.cal{border:1px solid var(--line);border-radius:16px;padding:14px}.cal-hint{margin:0 0 6px;font-size:13px;color:var(--muted);text-align:center}.cal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.cal-month{font-weight:700}.cal-nav{width:44px;height:44px;border:none;background:transparent;border-radius:999px;font-size:22px;color:var(--ink);cursor:pointer}.cal-nav:disabled{color:#b9c2bf;cursor:default}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.cal-week{margin-bottom:4px;font-size:12px;font-weight:600;color:var(--muted);text-align:center}.day{height:44px;border:1px solid #D5DEDB;background:#fff;color:var(--ink);border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;padding:0}.day:hover:not(:disabled){border-color:var(--accent)}.day-past{border-color:transparent;background:transparent;color:#a9b3b0;font-weight:400;cursor:default}.day-blocked{border-color:transparent;background:#eef0ef;color:#5f6b68;text-decoration:line-through;font-weight:400;cursor:default}.day-blocked.day-departok{cursor:pointer;text-decoration:none}.day-pending{border:1px dashed var(--pending-line);background:var(--pending-bg);color:var(--pending-ink)}.day-range{border-color:transparent;background:var(--tint);color:var(--accent-dark);font-weight:700}.day-edge{border-color:var(--accent);background:var(--accent);color:#fff;font-weight:800}.cal-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:14px;font-size:12px;color:var(--muted)}.cal-legend span{display:inline-flex;align-items:center;gap:6px}.lg{width:12px;height:12px;border-radius:3px;display:inline-block}.lg-free{border:1px solid #D5DEDB}.lg-blocked{background:#eef0ef}.lg-pending{background:var(--pending-bg);border:1px dashed var(--pending-line)}.lg-sel{background:var(--accent)}.form{display:flex;flex-direction:column;gap:14px;position:relative}.dates-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.date-box{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border:1px solid var(--field);border-radius:12px}.date-box span{font-size:12px;font-weight:600;color:var(--muted)}.date-box strong{font-size:15px;font-weight:800}.recap{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-radius:14px;background:var(--soft);font-size:14px;color:var(--ink-2)}.recap strong{font-size:15px;color:var(--ink)}.sent{display:flex;flex-direction:column;align-items:center;gap:10px;padding:24px 20px;border-radius:16px;background:var(--tint);text-align:center}.sent p{margin:0;font-size:14px;color:var(--ink-2)}.sent strong{font-size:18px}.sent-icon{width:52px;height:52px;border-radius:999px;background:var(--accent);display:flex;align-items:center;justify-content:center}.sent-icon.big{width:64px;height:64px}.site-footer{max-width:760px;margin:32px auto 0;padding:26px 20px 30px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--muted)}.site-footer strong{color:var(--ink)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#0a0f0feb;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:16px}.lightbox img{max-height:75vh;border-radius:10px}.lightbox p{margin:0;color:#fff;text-align:center;max-width:600px}.lb-nav{display:flex;gap:12px}.lb-nav button{width:52px;height:52px;border:none;border-radius:999px;background:#ffffff29;color:#fff;font-size:22px;cursor:pointer}.onb{min-height:100vh;display:flex;flex-direction:column;max-width:560px;margin:0 auto}.onb-head{position:sticky;top:0;z-index:5;background:#fff;padding:16px 20px 14px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:12px}.progress{display:flex;gap:4px}.progress span{flex:1;height:5px;border-radius:99px;background:#e1e8e6}.progress span.on{background:var(--accent)}.onb-main{flex:1;padding:24px 20px;display:flex;flex-direction:column;gap:16px}.onb-main>h1{font-size:24px}.onb-foot{position:sticky;bottom:0;background:#fff;display:flex;gap:10px;padding:14px 20px 20px;border-top:1px solid var(--line)}.chips-pick{display:flex;flex-wrap:wrap;gap:8px}.chips-pick button{min-height:44px;padding:0 14px;border:1px solid var(--field);border-radius:999px;background:#fff;color:var(--ink);font-size:14px;font-weight:600;cursor:pointer}.chips-pick button.on{border-color:var(--accent);background:var(--accent);color:#fff;font-weight:700}.photo-row{display:flex;gap:12px;align-items:flex-start;padding:12px;border:1px solid var(--line);border-radius:14px}.photo-row img{width:96px;height:96px;object-fit:cover;border-radius:10px;flex-shrink:0}.photo-fields{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.photo-fields em{font-style:normal;color:var(--muted);font-weight:500}.photo-actions{display:flex;gap:6px}.photo-actions button{min-height:40px;min-width:40px;padding:0 10px;border:1px solid var(--field);border-radius:10px;background:#fff;color:var(--ink-2);font-size:13px;font-weight:600;cursor:pointer}.photo-actions button:disabled{opacity:.4;cursor:default}.dropzone{position:relative;align-items:center;justify-content:center;min-height:56px;border:1.5px dashed var(--accent);border-radius:14px;background:var(--soft);color:var(--accent);font-size:15px;font-weight:700;cursor:pointer}.dropzone input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;min-height:0}.logo-preview{max-height:64px;width:auto}.option{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:64px;padding:12px 16px;border:1px solid var(--field);border-radius:14px;background:#fff;color:var(--ink);text-align:left;cursor:pointer}.option strong{font-size:15px}.option span{font-size:13px;color:var(--muted)}.option.on{border:2px solid var(--accent);background:var(--soft)}.option.small-opt{align-items:center;justify-content:center;min-height:48px;font-size:14px;font-weight:700}.preview{border:1px solid var(--line);border-radius:16px;overflow:hidden}.preview-hero{width:100%;height:140px;object-fit:cover;background:#dce7e4;display:block}.preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px}.preview-grid img,.preview-grid span{height:80px;width:100%;object-fit:cover;border-radius:8px;background:#dce7e4}.preview-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;font-family:var(--font-texte)}.preview-title{font-family:var(--font-titre);font-size:21px;font-weight:700}.preview-btn{margin-top:6px;display:flex;align-items:center;justify-content:center;min-height:40px;border-radius:10px;background:var(--accent);color:#fff;font-size:14px;font-weight:800}.swatches{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.swatches button,.fonts button{display:flex;flex-direction:column;align-items:center;gap:6px;min-height:76px;padding:10px 4px;border:1px solid var(--field);border-radius:12px;background:#fff;color:var(--ink-2);font-size:12px;font-weight:600;cursor:pointer}.swatches button.on,.fonts button.on{border:2px solid var(--ink);color:var(--ink);font-weight:700}.swatches i{width:30px;height:30px;border-radius:999px}.fonts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.fonts b{font-size:20px}.serp{display:flex;flex-direction:column;gap:4px;padding:16px;border:1px solid var(--line);border-radius:14px}.serp-url{font-size:12px;color:var(--ink-2)}.serp-title{font-size:17px;font-weight:600;color:#1a4db3;line-height:1.3}.serp-desc{font-size:13px;color:var(--ink-2);line-height:1.5}.checklist{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.checklist li{position:relative;padding-left:28px;font-size:14px;color:var(--ink-2)}.checklist li:before{content:"✓";position:absolute;left:0;top:-1px;width:20px;height:20px;border-radius:999px;background:var(--tint);color:var(--accent);font-weight:800;font-size:12px;display:flex;align-items:center;justify-content:center}.onb-done{padding:48px 20px;display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center}.card{width:100%;display:flex;flex-direction:column;gap:10px;padding:18px;border:1px solid var(--line);border-radius:16px;text-align:left}.card h1{font-size:22px}code{display:block;padding:10px 12px;border-radius:10px;background:var(--soft);font-size:13px;word-break:break-all}.badge{align-self:flex-start;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:700}.badge-en_attente{background:var(--pending-bg);color:var(--pending-ink)}.badge-confirmee{background:var(--tint);color:var(--accent-dark)}.badge-refusee{background:#eef0ef;color:#5f6b68}.landing{justify-content:center;gap:18px;padding-top:60px}.landing h1{font-size:32px}@media (min-width: 720px){.ph-main{height:420px}.thumbs .ph{height:140px}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-grid .ph{height:200px}.gallery-grid .ph:first-child{grid-column:span 3;height:360px}.photo-list{grid-template-columns:repeat(3,minmax(0,1fr))}h1{font-size:34px}}.apercu-banner{background:#1d2a2a;color:#fff;padding:14px 16px;display:flex;flex-direction:column;gap:10px;font-size:14px}.apercu-banner span{color:#d7e0dd;line-height:1.45;font-size:13px}.btn-light{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:12px;background:#fff;color:#1d2a2a;font-size:15px;font-weight:800;text-decoration:none}.btn-light:hover{color:#1d2a2a;background:#eef2f1}.is-apercu .site-header{top:0}.is-apercu .site-footer{padding-bottom:100px}.locked{display:flex;flex-direction:column;align-items:center;gap:10px;padding:24px 18px;border:1.5px dashed #9FB1AC;border-radius:16px;background:#f7f9f8;text-align:center}.locked p{margin:0;font-size:14px;color:var(--ink-2)}.locked-icon{width:48px;height:48px;border-radius:999px;background:#e3eae8;color:var(--ink-2);display:flex;align-items:center;justify-content:center}.locked .btn{align-self:stretch}.pay-bar{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px 16px;background:#fff;border-top:1px solid var(--line)}.pay-bar span{display:flex;flex-direction:column;font-size:13px;color:var(--muted)}.pay-bar strong{font-size:16px;color:var(--ink)}.pay-bar .btn{min-height:48px}.pay-page{background:var(--soft);max-width:none}.pay-page .onb-main{max-width:560px;margin:0 auto;width:100%}.plan{background:#fff;border:2px solid var(--accent);border-radius:20px;padding:22px 20px;display:flex;flex-direction:column;gap:18px}.plan-label{font-size:13px;font-weight:700;color:var(--accent)}.plan-price{display:flex;align-items:baseline;gap:4px}.plan-price strong{font-size:38px;font-weight:800;letter-spacing:-1px}.plan-price span{color:var(--muted)}.tag{padding:6px 10px;border-radius:999px;background:var(--tint);color:var(--accent-dark);font-size:12px;font-weight:700;white-space:nowrap}.pay-page .card{background:#fff}.center-col{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;padding-top:24px}.site-url{font-size:17px;color:var(--accent);word-break:break-all}.qr-card{flex-direction:row;align-items:center;gap:16px}.qr-card img{width:112px;height:112px;border-radius:8px;border:1px solid var(--line);flex-shrink:0}.qr-card div{display:flex;flex-direction:column;gap:8px}.qr-card p{margin:0}.steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--ink-2)}
