.camp-weekly{ border:1px solid #e5e5e5; border-radius:12px; padding:16px; background:#fff; position:relative; }
.camp-weekly__header{ display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; }
.camp-weekly__header h3{ margin:0; font-size:1.1rem; }
.camp-btn, .camp-btn-primary{ border:none; border-radius:10px; padding:8px 12px; cursor:pointer; }
.camp-btn{ background:#f0f0f0; }
.camp-btn-primary{ background:#434d32; color:#fff; } .camp-weekly__grid{ display:grid; grid-template-columns:repeat(7,minmax(120px,1fr)); gap:8px; overflow-x:auto; padding-bottom:6px; }
.camp-daycell{ border:1px solid #eee; border-radius:10px; padding:8px; background:#fafafa; min-width:120px; }
.camp-daycell.is-weekend{ background:#f3f3f3; }
.camp-daycell h5{ margin:0 0 6px; font-size:13px; font-weight:600; } .camp-slot{ display:flex; align-items:center; justify-content:center; padding:8px; border-radius:8px; cursor:pointer; border:1px dashed #ddd; margin-bottom:6px; user-select:none; }
.camp-slot.selected{ border:1px solid #434d32; background:#f3f5ef; font-weight:600; }
.camp-slot.disabled{ cursor:not-allowed; opacity:1; }
.camp-slot.disabled.weekend{ opacity:.45; background:#f2f2f2; border-color:#eaeaea; color:#9a9a9a; }
.camp-slot.disabled.unavailable{ background:#fde7e7; border-color:#e7b4b4; color:#a33; }
.camp-slot.disabled.past{ background:#f6f6f6; border-color:#eee; color:#aaa; } .camp-weekly__summary{ margin-top:16px; border-top:1px solid #eee; padding-top:12px; }
.camp-daycell__empty{display:block;padding:10px 4px;color:#777;font-size:.88rem;text-align:center;}
.camp-summary-list{ list-style:none; padding:0; margin:8px 0; }
.camp-summary-list li{ font-size:14px; margin-bottom:4px; }
.camp-week-error{ margin-top:8px; padding:8px 10px; background:#fde7e7; border:1px solid #e7b4b4; color:#a33; border-radius:8px; font-size:14px; } #camp-validate.is-loading{ opacity:.7; pointer-events:none; } #camp-weekly-scheduler{ scroll-margin-top:80px; } @media (max-width:980px){ .camp-weekly{ padding:12px; } }
.camp-weekly__header .camp-btn[disabled]{ opacity:.4; cursor:not-allowed; }
.camp-btn {
background: #434D32;
color: white;
font-weight: 500;
} .camp-quantity-box{
margin:12px 0;
padding:12px;
border:1px solid #e8e2d8;
border-radius:10px;
background:#faf9f6;
}
.camp-quantity-box label{
display:block;
font-weight:600;
margin-bottom:6px;
}
.camp-quantity-box input{
width:110px;
max-width:100%;
padding:8px 10px;
border:1px solid #d8d0c4;
border-radius:8px;
}
.camp-quantity-help{
display:block;
margin-top:6px;
color:#666;
} .camp-weekly{
width:100%;
max-width:100%;
box-sizing:border-box;
overflow:hidden;
}
.camp-weekly__header{
display:flex !important;
align-items:center !important;
justify-content:space-between !important;
gap:12px;
}
.camp-weekly__grid{
display:grid !important;
grid-template-columns:repeat(7, minmax(120px, 1fr)) !important;
gap:8px !important;
width:100%;
max-width:100%;
overflow-x:auto;
overflow-y:visible;
-webkit-overflow-scrolling:touch;
padding-bottom:8px;
}
.camp-daycell{
min-width:120px;
box-sizing:border-box;
}
.camp-slot{
min-height:42px;
text-align:center;
white-space:normal;
}
@media (max-width:1280px){
.camp-weekly__grid{
grid-template-columns:repeat(7, minmax(128px, 1fr)) !important;
}
.camp-daycell{
min-width:128px;
}
}
@media (max-width:980px){
.camp-weekly{
padding:12px;
}
.camp-weekly__grid{
grid-template-columns:repeat(7, minmax(135px, 1fr)) !important;
}
.camp-daycell{
min-width:135px;
}
} #camp-weekly-scheduler.camp-weekly{
overflow-x:hidden !important;
}
#camp-weekly-scheduler .camp-weekly__grid,
#camp-week-grid.camp-weekly__grid{
display:flex !important;
flex-direction:row !important;
flex-wrap:nowrap !important;
align-items:stretch !important;
justify-content:flex-start !important;
gap:8px !important;
width:100% !important;
max-width:100% !important;
overflow-x:auto !important;
overflow-y:visible !important;
-webkit-overflow-scrolling:touch !important;
padding-bottom:8px !important;
}
#camp-weekly-scheduler .camp-weekly__grid > .camp-daycell,
#camp-week-grid.camp-weekly__grid > .camp-daycell{
display:block !important;
flex:0 0 calc((100% - 48px) / 7) !important;
width:calc((100% - 48px) / 7) !important;
min-width:128px !important;
max-width:none !important;
box-sizing:border-box !important;
}
@media screen and (max-width:1280px){
#camp-weekly-scheduler .camp-weekly__grid > .camp-daycell,
#camp-week-grid.camp-weekly__grid > .camp-daycell{
flex-basis:142px !important;
width:142px !important;
min-width:142px !important;
}
}
@media screen and (max-width:980px){
#camp-weekly-scheduler .camp-weekly__grid > .camp-daycell,
#camp-week-grid.camp-weekly__grid > .camp-daycell{
flex-basis:150px !important;
width:150px !important;
min-width:150px !important;
}
} .camp-booking-mode{
display:flex;
align-items:center;
flex-wrap:wrap;
gap:8px;
margin:0 0 14px;
padding:10px;
border:1px solid #e8e2d8;
border-radius:10px;
background:#faf9f6;
}
.camp-booking-mode[hidden]{ display:none !important; }
.camp-booking-mode__label{ font-weight:600; margin-right:2px; }
.camp-booking-mode__btn{
appearance:none;
border:1px solid #cfc8bc;
border-radius:999px;
padding:7px 12px;
background:#fff;
color:#343a2b;
cursor:pointer;
font:inherit;
font-size:14px;
line-height:1.2;
}
.camp-booking-mode__btn:hover,
.camp-booking-mode__btn:focus-visible{
border-color:#434d32;
outline:none;
}
.camp-booking-mode__btn.is-active{
border-color:#434d32;
background:#434d32;
color:#fff;
font-weight:600;
} button.camp-slot{
width:100%;
font:inherit;
background:#fff;
}
button.camp-slot.selected{ background:#f3f5ef; }
button.camp-slot:disabled{ font:inherit; } .camp-reservation-auth{
display:flex;
align-items:flex-start;
gap:18px;
width:100%;
box-sizing:border-box;
padding:24px;
border:1px solid #ded8cc;
border-radius:16px;
background:#fff;
box-shadow:0 8px 24px rgba(38,45,29,.07);
}
.camp-reservation-auth__icon{
display:flex;
align-items:center;
justify-content:center;
flex:0 0 54px;
width:54px;
height:54px;
border-radius:50%;
background:#f3f5ef;
font-size:25px;
}
.camp-reservation-auth__content{ min-width:0; }
.camp-reservation-auth__content h2{
margin:0 0 8px;
color:#343d29;
font-size:clamp(22px, 3vw, 30px);
line-height:1.2;
}
.camp-reservation-auth__content p{
margin:0;
max-width:760px;
color:#50564a;
line-height:1.65;
}
.camp-reservation-auth__actions{
display:flex;
flex-wrap:wrap;
gap:10px;
margin-top:18px;
}
.camp-reservation-auth__button{
display:inline-flex;
align-items:center;
justify-content:center;
min-height:44px;
padding:10px 17px;
border:1px solid #434d32;
border-radius:10px;
text-decoration:none !important;
font-weight:600;
transition:transform .15s ease, background-color .15s ease, color .15s ease;
}
.camp-reservation-auth__button:hover{ transform:translateY(-1px); }
.camp-reservation-auth__button--primary{
background:#434d32;
color:#fff !important;
}
.camp-reservation-auth__button--secondary{
background:#fff;
color:#434d32 !important;
}
@media screen and (max-width:640px){
.camp-reservation-auth{ padding:18px; gap:12px; }
.camp-reservation-auth__icon{ flex-basis:44px; width:44px; height:44px; font-size:21px; }
.camp-reservation-auth__actions{ flex-direction:column; }
.camp-reservation-auth__button{ width:100%; box-sizing:border-box; }
.camp-booking-mode{ align-items:stretch; }
.camp-booking-mode__label{ width:100%; }
.camp-booking-mode__btn{ flex:1 1 100%; }
}.et_pb_row.row-full{
width:100% !important;
max-width:100% !important;
} .et_pb_row.row-full .et_pb_column{
padding-left:0 !important;
padding-right:0 !important;
} .home .et_pb_row.row-full{
width:100% !important;
max-width:100% !important;
} .et_pb_row.row-1080{
width:100% !important; max-width:1080px !important; margin-left:auto; margin-right:auto;
} @media (max-width: 980px){
.et_pb_row.row-1080{
padding-left:20px;
padding-right:20px;
}
}

.formulaire-connexion-custom {
max-width: 400px;
margin: auto;
padding: 2rem;
border-radius: 15px;
box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}
.form-label {
font-weight: bold;
font-size: 1rem;
color: #333;
}
.form-input {
width: 100%;
padding: 0.8rem;
font-size: 1rem;
border: 1px solid #ccc;
border-radius: 8px;
margin-top: 0.3rem;
margin-bottom: 1rem;
box-shadow: inset 0 1px 3px rgba(0,0,0,0.05);
}
.form-submit-btn {
background-color: #444E32;
color: #fff;
padding: 0.8rem 1.5rem;
font-size: 1rem;
border: none;
border-radius: 8px;
cursor: pointer;
transition: background-color 0.3s ease;
}
.form-submit-btn:hover {
background-color: #2f3525;
}
.form-connect-message {
text-align: center;
padding: 2rem;
font-weight: bold;
color: #444E32;
}
.form-error {
font-size: 15px;
line-height: 1.6;
}
.form-btn-secondary:hover {
background: #2f3525;
}
.formulaire-inscription-custom {
max-width: 700px;
margin: 2rem auto;
background: #f9f9f91f;
padding: 2rem;
border-radius: 15px;
box-shadow: 0 4px 25px rgba(0,0,0,0.05);
font-family: "Segoe UI", sans-serif;
}
.formulaire-inscription-custom .form-title {
text-align: center;
font-size: 18px;
color: #FFF;
margin-bottom: 1.5rem;
}
.formulaire-inscription-custom .form-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 1.2rem;
}
.formulaire-inscription-custom .form-group.full {
grid-column: span 2;
}
.formulaire-inscription-custom .form-group label {
display: block;
margin-bottom: 0.4rem;
font-weight: 600;
color: #FFF;
}
.formulaire-inscription-custom .form-group input {
width: 100%;
padding: 0.75rem;
border: 1px solid #ccc;
border-radius: 8px;
background: #fff;
font-size: 1rem;
box-shadow: inset 0 1px 2px rgba(0,0,0,0.04);
transition: border 0.3s;
}
.formulaire-inscription-custom .form-group input:focus {
border-color: #444E32;
outline: none;
}
.formulaire-inscription-custom .form-actions {
text-align: center;
margin-top: 2rem;
}
.formulaire-inscription-custom .form-actions button {
background: #444E32;
color: white;
border: none;
padding: 0.9rem 2rem;
font-size: 1rem;
border-radius: 8px;
cursor: pointer;
transition: background 0.3s ease;
}
.formulaire-inscription-custom .form-actions button:hover {
background: #2e331f;
}
.form-error,
.form-success {
max-width: 700px;
margin: 1rem auto;
padding: 1rem;
border-radius: 8px;
font-size: 1rem;
text-align: center;
}
.form-error {
background: #ffe8e8;
color: #b30000;
}
.form-success {
background: #e6ffe8;
color: #247c3b;
}
.campement-category-grid {
display: flex;
flex-wrap: wrap;
gap: 1.1rem 2rem; justify-content: center;
margin-top: 1.5rem;
margin-bottom: 1.5rem;
}
.campement-category-btn {
min-width: 170px;
text-align: center;
margin-left: 10px;
}
.campement-category-btn {
background-color: #444E33;
color: white;
border: none;
padding: 1rem 2rem;
border-radius: 8px;
font-size: 1.1rem;
cursor: pointer;
transition: background 0.3s;
}
.campement-category-btn:hover {
background-color: #2f3724;
}
.reservation-section {
margin-top: 2rem;
}
.campement-alert {
background: #f8d7da;
color: #721c24;
padding: 1rem;
border-radius: 6px;
} .et-cart-info {
display: none !important;
} .campement-reservation{
max-width: 1160px; margin: 2rem auto;
background: #f7f8f6;
padding: 2rem;
border-radius: 18px;
box-shadow: 0 6px 32px rgba(0,0,0,0.07);
display: grid;
grid-template-columns: minmax(320px, 1fr) 1.6fr; gap: 24px;
align-items: start;
font-family: 'Segoe UI', Arial, sans-serif;
} .campement-reservation h2,
.campement-reservation h4{
color:#444E32;
text-align:center;
font-weight:700;
margin-bottom:1.1rem;
}
#campement-ressources h2,
#campement-formulaire h2{ text-align:left; } #campement-categories{ grid-column: 1 / -1; } .ressources-ul{
list-style:none;
padding:0;
margin:1.2rem 0 0;
display:grid;
grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
gap:16px;
}
.ressource-item{
margin:0; background:#f3f4f1;
border:1px solid #e9eadf;
border-radius:10px;
padding:1rem;
box-shadow:0 1px 6px rgba(68,78,50,.06);
display:flex;
flex-direction:column;
gap:.5rem;
min-height:120px;
}
.ressource-item strong{ font-size:1.08rem; color:#222A18; }
.ressource-item .btn-reserver-ressource{
align-self:flex-start;
background:#444E32; color:#fff; border:none; border-radius:8px;
padding:.55rem 1.1rem; margin-top:.25rem; font-size:1rem; cursor:pointer;
transition: background .2s, transform .08s;
}
.ressource-item .btn-reserver-ressource:hover{ background:#2f3724; transform: translateY(-1px); }
.ressource-item.active{ outline:2px solid #444E32; background:#eef0ea; } #campement-formulaire{ position: sticky; top: 92px; }  .campement-reservation .btn-primary,
.campement-reservation button[type="submit"]{ width:auto; } @media (max-width: 980px){
.campement-reservation{
grid-template-columns: 1fr; padding: 1.25rem;
}
#campement-formulaire{ position: static; }
}
.campement-reservation h2,
.campement-reservation h4 {
color: #444E32;
text-align: center;
font-weight: 700;
margin-bottom: 1.3rem;
}
.ressource-summary {
background: #e9eedf;
border-radius: 8px;
padding: 1.2rem 1rem 1rem 1rem;
margin-bottom: 1.5rem;
box-shadow: 0 2px 8px rgba(34,61,34,0.06);
}
.campement-reservation label {
font-weight: 600;
color: #444E32;
margin-bottom: 0.25rem;
display: block;
}
.campement-reservation input[type="date"],
.campement-reservation input[type="number"],
.campement-reservation select {
width: 100%;
padding: 0.7rem 1rem;
border: 1px solid #ccc;
border-radius: 7px;
background: #fff;
font-size: 1rem;
margin-bottom: 1.3rem;
margin-top: 0.1rem;
transition: border-color 0.3s;
}
.campement-reservation input[type="date"]:focus,
.campement-reservation input[type="number"]:focus,
.campement-reservation select:focus {
border-color: #444E32;
outline: none;
}
.campement-reservation .btn-primary,
.campement-reservation button[type="submit"] {
background-color: #444E32;
color: #fff;
padding: 1rem 2rem;
font-size: 1.15rem;
border: none;
border-radius: 10px;
cursor: pointer;
margin-top: 0.8rem;
width: 100%;
transition: background 0.2s;
}
.campement-reservation .btn-primary:hover,
.campement-reservation button[type="submit"]:hover {
background-color: #222A18;
}
#reservation-feedback {
margin-top: 1rem;
min-height: 24px;
font-size: 1.05rem;
color: #8a3c02;
}
.ressources-ul {
list-style: none;
padding: 0;
margin: 1.4rem 0;
}
.ressource-item {
background: #f3f4f1;
border-radius: 7px;
margin-bottom: 1.3rem;
padding: 1.1rem 1rem;
box-shadow: 0 2px 8px rgba(68,78,50,0.03);
display: flex;
flex-direction: column;
gap: 0.5rem;
align-items: flex-start;
}
.ressource-item strong {
font-size: 1.18rem;
color: #222A18;
}
.ressource-item .btn-reserver-ressource {
background: #444E32;
color: #fff;
border: none;
border-radius: 7px;
padding: 0.65rem 1.3rem;
margin-top: 0.7rem;
font-size: 1.05rem;
transition: background 0.2s;
cursor: pointer;
}
.ressource-item .btn-reserver-ressource:hover {
background: #2f3724;
}
.campement-category-btn {
background-color: #444E33;
color: white;
border: none;
padding: 1.15rem 2.2rem;
border-radius: 9px;
font-size: 1.1rem;
font-weight: 600;
letter-spacing: 1px;
cursor: pointer;
transition: background 0.3s;
margin-bottom: 0.5rem;
}
.campement-category-btn.active,
.campement-category-btn:focus,
.campement-category-btn:hover {
background-color: #2f3724;
color: #fff;
outline: none;
}
p.form-group {
color: white;
font-size: 20px;
font-weight: 700;
}
.formulaire-connexion-custom {
color: #fff; }
.formulaire-connexion-custom label,
.formulaire-connexion-custom a,
.formulaire-connexion-custom p {
color: #fff; }
.formulaire-connexion-custom input,
.formulaire-connexion-custom button {
color: #000; background: #fff; }  .campement-gate {
--camp-bg: #434D32; --camp-card: #5A6646; --camp-accent: #6F7D57; --camp-text: #ffffff; --camp-text-dim: #D6DAD5; --camp-border: #4a564a; --radius-xl: 16px;
--radius-2xl: 22px;
--shadow: 0 10px 24px rgba(0,0,0,.25);
margin: 48px auto;
max-width: 1080px;
padding: 8px 16px 24px;
color: var(--camp-text);
background: var(--camp-bg);
border-radius: var(--radius-2xl);
box-shadow: var(--shadow);
}
.campement-gate .gate-head {
text-align: center;
padding: 24px 12px 8px;
}
.campement-gate .gate-head h1 { margin: 0 0 6px; color: var(--camp-text); }
.campement-gate .gate-head p  { margin: 0; color: var(--camp-text-dim); }
.campement-gate .gate-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
padding: 24px;
}
@media (max-width: 900px) {
.campement-gate .gate-grid { grid-template-columns: 1fr; }
}
.campement-gate .gate-card {
background: var(--camp-card);
border: 1px solid var(--camp-border);
border-radius: var(--radius-xl);
padding: 24px;
box-shadow: 0 6px 16px rgba(0,0,0,.2);
}
.campement-gate .gate-card h2 { margin-top: 0; color: var(--camp-text); }
.campement-gate .gate-list {
margin: 0 0 16px 18px;
color: var(--camp-text);
}
.campement-gate .gate-list li { margin: 6px 0; }
.campement-gate .gate-note { margin-top: 12px; color: var(--camp-text-dim); } .campement-gate .gate-form label {
color: var(--camp-text);
font-weight: 600;
}
.campement-gate .gate-form input[type="text"],
.campement-gate .gate-form input[type="password"] {
width: 100%;
border-radius: 12px;
border: 1px solid var(--camp-border);
background: #2d352c;
color: var(--camp-text);
padding: 10px 12px;
margin: 6px 0 12px;
outline: none;
}
.campement-gate .gate-form input[type="text"]:focus,
.campement-gate .gate-form input[type="password"]:focus {
border-color: var(--camp-accent);
box-shadow: 0 0 0 3px rgba(75,92,68,.25);
}
.campement-gate .gate-form .forgetmenot label,
.campement-gate .gate-links a {
color: var(--camp-text-dim);
}
.campement-gate .gate-links a:hover {
color: var(--camp-text);
text-decoration: underline;
} .campement-gate #campement-login-submit,
.campement-gate .btn-campement {
display: inline-block;
padding: 12px 22px;
border-radius: 999px;
border: 1px solid #1a1f1a;
background: linear-gradient(180deg, #4b5c44, #3d4939);
color: #fff !important;
text-decoration: none;
font-weight: 700;
line-height: 1;
box-shadow: 0 6px 14px rgba(0,0,0,.25);
transition: transform .12s ease, box-shadow .12s ease, background .12s ease;
cursor: pointer;
}
.campement-gate #campement-login-submit:hover,
.campement-gate .btn-campement:hover {
transform: translateY(-1px);
box-shadow: 0 10px 20px rgba(0,0,0,.3);
background: linear-gradient(180deg, #566a4f, #465242);
}
.campement-gate #campement-login-submit:active,
.campement-gate .btn-campement:active { transform: translateY(0); } .campement-gate .gate-foot {
text-align: center;
color: var(--camp-text-dim);
margin: 8px 0 0;
} #camp-panel-invoices td[style*="text-align:right"],
#camp-panel-invoices th[style*="text-align:right"] {
white-space: nowrap;
}
.bonjour-campeur {
text-align: center;
font-size: 22px; font-weight: 800;
color: #000; margin: 20px 0;
} .camp-pay-page {
width: 100%;
min-height: 85vh;
padding: 70px 24px;
background:
radial-gradient(circle at top left, rgba(245,156,113,.18), transparent 35%),
radial-gradient(circle at top right, rgba(251,232,209,.7), transparent 35%),
#faf9f6;
font-family: Arial, sans-serif;
color: #320e00;
}
.camp-pay-hero {
text-align: center;
max-width: 850px;
margin: 0 auto 46px;
}
.camp-pay-pill {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 10px 18px;
border-radius: 999px;
background: #fbe8d1;
color: #9b3f18;
font-weight: 800;
margin-bottom: 18px;
}
.camp-pay-hero h1 {
font-size: clamp(42px, 6vw, 76px);
line-height: .95;
margin: 0 0 18px;
font-weight: 900;
letter-spacing: -2px;
color: #320e00;
}
.camp-pay-hero p {
font-size: 19px;
color: #5c5048;
margin: 0;
}
.camp-pay-grid {
max-width: 1320px;
margin: 0 auto 24px;
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 24px;
}
.camp-pay-card {
border: 1px solid rgba(50,14,0,.10);
background: rgba(255,255,255,.85);
border-radius: 28px;
padding: 30px 24px;
min-height: 330px;
cursor: pointer;
box-shadow: 0 18px 50px rgba(32,23,11,.08);
transition: .25s ease;
text-align: center;
}
.camp-pay-card:hover,
.camp-pay-card.is-active {
transform: translateY(-5px);
border-color: #f59c71;
box-shadow: 0 28px 70px rgba(32,23,11,.14);
}
.camp-pay-icon {
width: 88px;
height: 88px;
border-radius: 50%;
background: #fbe8d1;
display: flex;
align-items: center;
justify-content: center;
margin: 0 auto 22px;
font-size: 34px;
}
.camp-pay-icon.blue { background: #eaf1fb; }
.camp-pay-icon.green { background: #e8f6e7; }
.camp-pay-icon.purple { background: #f0e6fb; }
.camp-pay-card h3 {
font-size: 22px;
margin: 0 0 18px;
color: #320e00;
}
.camp-pay-card p {
margin: 8px 0;
color: #5c5048;
font-size: 16px;
}
.camp-pay-price {
font-size: 38px;
font-weight: 900;
color: #e75f24;
line-height: 1;
}
.camp-pay-price.small {
font-size: 32px;
}
.camp-pay-price span {
font-size: 20px;
}
.blue-text { color: #27679e; }
.green-text { color: #3f974e; }
.camp-pay-card hr {
border: 0;
border-top: 1px solid rgba(50,14,0,.10);
margin: 22px 0;
}
.camp-pay-bottom {
max-width: 1320px;
margin: 0 auto;
background: rgba(255,255,255,.9);
border: 1px solid rgba(50,14,0,.10);
border-radius: 28px;
padding: 26px;
display: grid;
grid-template-columns: 1.2fr 1fr auto;
gap: 24px;
align-items: center;
box-shadow: 0 18px 50px rgba(32,23,11,.08);
}
.camp-pay-bottom strong {
font-size: 22px;
color: #320e00;
}
.camp-pay-bottom p {
margin: 6px 0 0;
color: #7a6c62;
}
.camp-pay-input-wrap {
display: flex;
align-items: center;
border: 1px solid rgba(50,14,0,.16);
border-radius: 16px;
overflow: hidden;
background: #fff;
}
.camp-pay-input-wrap input {
width: 100%;
border: 0;
padding: 18px;
font-size: 22px;
outline: none;
}
.camp-pay-input-wrap span {
padding: 18px;
font-size: 22px;
font-weight: 900;
border-left: 1px solid rgba(50,14,0,.10);
}
.camp-pay-bottom button {
border: 0;
border-radius: 16px;
padding: 20px 42px;
background: #320e00;
color: #fff;
font-size: 18px;
font-weight: 900;
cursor: pointer;
transition: .2s ease;
}
.camp-pay-bottom button:hover {
background: #20170b;
transform: translateY(-2px);
}
@media (max-width: 1100px) {
.camp-pay-grid {
grid-template-columns: repeat(2, 1fr);
}
}
@media(max-width:768px){
.camp-pay-page{
padding:32px 14px 40px;
min-height:auto;
}
.camp-pay-hero{
margin-bottom:28px;
}
.camp-pay-pill{
font-size:13px;
padding:8px 14px;
margin-bottom:14px;
}
.camp-pay-hero h1{
font-size:42px;
line-height:0.95;
letter-spacing:-1px;
margin-bottom:14px;
}
.camp-pay-hero p{
font-size:15px;
line-height:1.5;
padding:0 6px;
}
.camp-pay-grid{
grid-template-columns:1fr;
gap:14px;
margin-bottom:18px;
}
.camp-pay-card{
min-height:auto;
border-radius:22px;
padding:22px 18px;
display:flex;
align-items:center;
gap:16px;
text-align:left;
}
.camp-pay-card:hover,
.camp-pay-card.is-active{
transform:none;
}
.camp-pay-icon{
width:64px;
height:64px;
min-width:64px;
margin:0;
font-size:26px;
}
.camp-pay-card h3{
font-size:18px;
margin:0 0 8px;
}
.camp-pay-card p{
margin:4px 0;
font-size:14px;
line-height:1.4;
}
.camp-pay-price{
font-size:28px;
margin-bottom:6px;
}
.camp-pay-price span{
font-size:15px;
}
.camp-pay-bottom{
grid-template-columns:1fr;
gap:16px;
border-radius:22px;
padding:18px;
position:sticky;
bottom:12px;
z-index:50;
backdrop-filter:blur(12px);
background:rgba(255,255,255,.96);
}
.camp-pay-summary{
text-align:center;
}
.camp-pay-bottom strong{
font-size:20px;
display:block;
}
.camp-pay-bottom p{
font-size:14px;
}
.camp-pay-input-wrap{
border-radius:14px;
}
.camp-pay-input-wrap input{
padding:16px;
font-size:20px;
text-align:center;
}
.camp-pay-input-wrap span{
padding:16px;
font-size:20px;
}
.camp-pay-bottom button{
width:100%;
border-radius:14px;
padding:18px;
font-size:17px;
}
}