#izp{--izp-green:#146444;--izp-border:#dce5df;max-width:1140px;margin:30px auto 60px;color:#19362a;font-family:inherit;line-height:1.6}#izp *{box-sizing:border-box}#izp .izp-notice{padding:16px 22px;background:#fff6df;border:1px solid #ead49c;border-radius:12px;color:#725017;font-size:14px}#izp .izp-heading{margin:30px 0}#izp .izp-heading span{font-size:12px;letter-spacing:2px;font-weight:700;color:var(--izp-green)}#izp h2{font-size:36px;margin:8px 0 12px;color:#19362a}#izp h3{font-size:23px;margin:0 0 24px;color:#19362a}#izp .izp-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}#izp form,#izp aside{background:#fff;padding:30px;border:1px solid var(--izp-border);border-radius:16px}#izp aside{background:#f5f8f6}#izp label{display:block;font-size:14px;font-weight:600;margin-bottom:18px}#izp input,#izp select{display:block;width:100%;margin-top:6px;min-height:46px;border:1px solid #b8c9bf;border-radius:7px;padding:10px 12px;background:#fff;color:#19362a;font-size:15px}#izp input:focus,#izp select:focus{outline:2px solid #146444;outline-offset:2px}#izp .izp-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}#izp button{width:100%;background:var(--izp-green);color:white;border:0;border-radius:8px;padding:15px;font-weight:700;font-size:15px;cursor:pointer}#izp button:disabled{opacity:.6;cursor:wait}#izp .izp-muted{font-size:12px;color:#577061}#izp #izp-error{color:#a62a20;font-size:14px}#izp dl{display:grid;grid-template-columns:1fr auto;gap:0;margin:14px 0}#izp dt,#izp dd{border-bottom:1px solid var(--izp-border);padding:9px 0;font-size:13px;margin:0}#izp dd{font-weight:700;text-align:right;padding-left:12px}#izp .izp-tag{font-size:12px;font-weight:700;color:#8a641c}#izp .izp-fieldset{border:0;margin:0 0 18px;padding:0}#izp .izp-fieldset legend{font-weight:700;font-size:14px}.izp-check{display:flex!important;align-items:center;gap:8px;padding:9px 10px;margin:0!important;border:1px solid var(--izp-border);border-bottom:0;background:#fbfdfb;font-size:13px!important}.izp-check:last-child{border-bottom:1px solid var(--izp-border);border-radius:0 0 7px 7px}.izp-check:first-child{border-radius:7px 7px 0 0}.izp-check input{display:inline!important;width:16px!important;min-height:16px!important;margin:0!important}.izp-check span{margin-left:auto;color:#577061;font-weight:400}.izp-area{padding:15px;margin-top:12px;border:1px solid var(--izp-border);border-radius:10px;background:#fbfdfb}.izp-area strong{display:block;margin-bottom:7px}.izp-area label{margin-bottom:10px}.izp-area .izp-special{border:0;background:transparent;padding:0}.izp-overrides{display:grid;grid-template-columns:1fr 1fr;gap:12px}.izp-result-area{border-bottom:1px solid var(--izp-border);padding-bottom:12px;margin-bottom:16px}.izp-result-area h4{margin:0;color:var(--izp-green);font-size:16px}.izp-grand{border-top:2px solid var(--izp-green);padding-top:8px}.izp-grand dt,.izp-grand dd{font-weight:800}.izp-total{font-size:30px;font-weight:800;color:var(--izp-green);margin:0 0 18px}@media(max-width:760px){#izp{margin:20px 0}#izp .izp-grid{grid-template-columns:1fr}#izp form,#izp aside{padding:20px}#izp h2{font-size:28px}#izp .izp-pair,#izp .izp-overrides{grid-template-columns:1fr}#izp dd{max-width:170px;overflow-wrap:anywhere}.izp-check span{font-size:11px}}

/* Page-only presentation refinement: layout only; calculation and form behavior are untouched. */
body.page-id-3796 .page-title { display: none; }
body.page-id-3796 .main-page-wrapper { padding-top: 26px; }
body.page-id-3796 .main-page-wrapper > .container { max-width: 1440px; }
#izp { --izp-green:#146444; --izp-deep:#0d392a; --izp-ink:#17352a; --izp-border:#dce6df; --izp-surface:#f6f8f6; max-width:1360px; margin:22px auto 76px; padding:0 8px; color:var(--izp-ink); }
#izp .izp-notice { display:flex; align-items:center; gap:10px; padding:12px 16px; border:1px solid #e8d59e; border-radius:10px; background:#fffaf0; color:#74531c; box-shadow:none; }
#izp .izp-notice strong { letter-spacing:.09em; font-size:11px; }
#izp .izp-heading { margin:28px 0 24px; padding:0 2px 22px; border-bottom:1px solid var(--izp-border); }
#izp .izp-heading span { letter-spacing:.14em; font-size:11px; color:var(--izp-green); }
#izp h2 { margin:7px 0 8px; font-size:42px; line-height:1.12; letter-spacing:-.035em; color:var(--izp-deep); }
#izp .izp-heading p { max-width:700px; margin:0; color:#5b7064; font-size:16px; }
#izp .izp-grid { grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr); gap:32px; }
#izp form, #izp aside, #izp #izp-quote-wrap { border:1px solid var(--izp-border); border-radius:18px; box-shadow:0 16px 34px rgba(17,62,43,.07); }
#izp form, #izp aside { padding:34px; }
#izp aside { background:linear-gradient(145deg,#f8faf8 0%,#edf4ef 100%); position:sticky; top:106px; }
#izp h3 { margin:0 0 25px; font-size:22px; letter-spacing:-.02em; color:var(--izp-deep); }
#izp .izp-fieldset { margin-bottom:24px; }
#izp .izp-fieldset legend { color:var(--izp-deep); letter-spacing:.02em; }
#izp .izp-check { padding:11px 13px; background:#fff; transition:border-color .18s ease,background .18s ease; }
#izp .izp-check:hover { border-color:#a9c4b2; background:#fbfdfb; }
#izp .izp-area { padding:17px; margin-top:14px; border-radius:12px; background:var(--izp-surface); }
#izp input, #izp select, #izp textarea { border-color:#c5d4cb; border-radius:9px; background:#fff; transition:border-color .18s ease,box-shadow .18s ease; }
#izp textarea { display:block; width:100%; min-height:96px; margin-top:6px; padding:10px 12px; color:var(--izp-ink); font:inherit; }
#izp input:focus, #izp select:focus, #izp textarea:focus { border-color:var(--izp-green); outline:0; box-shadow:0 0 0 3px rgba(20,100,68,.12); }
#izp button { border-radius:9px; padding:16px; background:linear-gradient(135deg,#146444,#0f5338); box-shadow:0 9px 17px rgba(15,83,56,.16); transition:transform .18s ease,box-shadow .18s ease; }
#izp button:hover { transform:translateY(-1px); box-shadow:0 12px 22px rgba(15,83,56,.22); }
#izp .izp-total { font-size:34px; color:var(--izp-deep); letter-spacing:-.035em; }
#izp .izp-grand { border-top-color:var(--izp-green); }
#izp #izp-quote-wrap { margin-top:32px; padding:32px 34px; background:#fff; }
#izp #izp-quote-wrap form { margin:22px 0 0; padding:0; border:0; border-radius:0; box-shadow:none; }
@media (max-width:960px) { body.page-id-3796 .main-page-wrapper > .container { max-width:100%; } #izp .izp-grid { grid-template-columns:1fr; } #izp aside { position:static; } }
@media (max-width:760px) { body.page-id-3796 .main-page-wrapper { padding-top:18px; } #izp { margin:16px 0 48px; padding:0; } #izp .izp-notice { display:block; } #izp .izp-heading { margin:22px 0 18px; padding-bottom:17px; } #izp h2 { font-size:31px; } #izp form, #izp aside, #izp #izp-quote-wrap { padding:22px 20px; border-radius:14px; } #izp #izp-quote-wrap form { padding:0; } }

/* Reference-style form rows and combined project summary. */
#izp #izp-area-inputs{display:none}#izp .izp-check{display:grid!important;grid-template-columns:26px minmax(0,1fr) 130px 150px;align-items:center;gap:12px;padding:13px 14px}#izp .izp-check span{grid-column:3;margin:0;text-align:right}#izp .izp-inline-size{grid-column:4!important;grid-row:1;width:100%!important;margin:0!important;min-height:42px!important;text-align:right}#izp .izp-summary-table{margin:0 0 18px;border-top:1px solid var(--izp-border)}#izp .izp-summary-row{display:grid;grid-template-columns:minmax(0,1.3fr) .55fr .85fr .9fr;gap:8px;padding:12px 0;border-bottom:1px solid var(--izp-border);font-size:14px}.izp-summary-row span,.izp-summary-row b{text-align:right}#izp .izp-grand dd:last-child{font-size:19px;color:var(--izp-deep)}@media(max-width:760px){#izp .izp-check{grid-template-columns:22px minmax(0,1fr);gap:8px}#izp .izp-check span{grid-column:2;text-align:left}#izp .izp-inline-size{grid-column:2!important;grid-row:auto;width:100%!important}.izp-summary-row{grid-template-columns:1fr 1fr!important}.izp-summary-row b{grid-column:2}}

/* Mobile-only refinement: desktop layout is intentionally unchanged. */
@media (max-width:760px){
 body.page-id-3796 .main-page-wrapper{padding-top:12px}
 #izp{margin:12px 0 42px;padding:0 12px}
 #izp .izp-notice{margin:0 -2px 18px;padding:12px 14px;font-size:13px}
 #izp .izp-heading{margin:18px 0;padding:0 2px 16px}
 #izp .izp-heading span{font-size:10px;letter-spacing:.11em}
 #izp h2{font-size:30px;line-height:1.13}
 #izp .izp-heading p{font-size:14px;line-height:1.55}
 #izp .izp-grid{gap:18px}
 #izp form,#izp aside,#izp #izp-quote-wrap{padding:20px 16px;border-radius:14px}
 #izp h3{margin-bottom:18px;font-size:20px}
 #izp .izp-fieldset{margin-bottom:18px}
 #izp .izp-check{grid-template-columns:22px minmax(0,1fr)!important;gap:7px;padding:11px 10px!important;font-size:13px!important}
 #izp .izp-check span{grid-column:2;text-align:left;font-size:12px}
 #izp .izp-inline-size{grid-column:2!important;grid-row:auto!important;min-height:40px!important;font-size:16px!important}
 #izp .izp-pair{gap:10px}
 #izp label{margin-bottom:13px}
 #izp input,#izp select{min-height:44px;font-size:16px}
 #izp button{min-height:50px;font-size:15px}
 #izp aside{position:static}
 #izp .izp-summary-row{padding:10px 0;font-size:13px}
 #izp .izp-total{font-size:25px;line-height:1.25}
 #izp dt,#izp dd{font-size:12px;padding:8px 0}
 #izp #izp-quote-wrap{margin-top:20px}
}

/* The date is selected through the native device calendar; this trigger makes it explicit on touch screens. */
#izp .izp-date-control{display:flex;align-items:flex-end;gap:8px;margin-top:6px}
#izp .izp-date-control input{flex:1;min-width:0;margin-top:0}
#izp .izp-date-trigger{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:auto;min-height:46px;padding:10px 12px;white-space:nowrap;font-size:13px;box-shadow:none}
#izp .izp-date-trigger span{font-size:16px;line-height:1}
@media(max-width:760px){#izp .izp-date-trigger{min-height:44px;padding:9px 10px;font-size:13px}#izp .izp-date-trigger b{font-weight:700}}

/* In-page calendar: dates are selected, never typed. */
#izp .izp-date-control{position:relative}
#izp .izp-date-display{cursor:pointer;background:#fff!important}
#izp .izp-calendar{position:absolute;z-index:20;top:calc(100% + 8px);left:0;width:296px;padding:12px;border:1px solid #c5d4cb;border-radius:12px;background:#fff;box-shadow:0 16px 34px rgba(17,62,43,.18)}
#izp .izp-calendar[hidden]{display:none}
#izp .izp-calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;color:var(--izp-deep)}
#izp .izp-calendar-nav{width:34px;min-height:34px;padding:0;border-radius:7px;background:#eef5f0;color:var(--izp-green);box-shadow:none;font-size:24px;line-height:1}
#izp .izp-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;text-align:center}
#izp .izp-calendar-weekday{padding:4px 0;color:#6f8276;font-size:11px;font-weight:700}
#izp .izp-calendar-day{min-height:34px;padding:0;border-radius:7px;background:#fff;color:var(--izp-ink);box-shadow:none;font-size:13px}
#izp .izp-calendar-day:hover,#izp .izp-calendar-day.is-selected{background:var(--izp-green);color:#fff;transform:none;box-shadow:none}
@media(max-width:760px){#izp .izp-calendar{width:100%;min-width:296px;max-width:calc(100vw - 64px)}#izp .izp-calendar-day{min-height:38px}}
#izp input[type=hidden]{display:none!important}

/* Quote PDF is presented inline, with explicit view and download options. */
#izp .izp-quote-success{margin:18px 0 10px;color:var(--izp-deep);font-weight:700}
#izp .izp-pdf-actions{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 14px}
#izp .izp-pdf-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 14px;border:1px solid var(--izp-green);border-radius:8px;color:#fff;background:var(--izp-green);font-size:14px;font-weight:700;text-decoration:none}
#izp .izp-pdf-actions a+ a{color:var(--izp-green);background:#fff}
#izp .izp-pdf-preview{display:block;width:100%;height:680px;border:1px solid var(--izp-border);border-radius:10px;background:#f5f7f5}
@media(max-width:760px){#izp .izp-pdf-actions a{flex:1;min-width:160px}#izp .izp-pdf-preview{height:520px}}


/* IZOVEN premium visual layer — presentation only. */
body.page-id-3796 .main-page-wrapper {
  background:
    radial-gradient(circle at 8% 12%, rgba(24,174,213,.09), transparent 24rem),
    radial-gradient(circle at 95% 25%, rgba(16,100,68,.08), transparent 29rem),
    #f7faf8;
}
body.page-id-3796 .main-page-wrapper > .container { max-width: 1480px; }
#izp {
  --izp-deep: #082d3d;
  --izp-green: #0f6a4e;
  --izp-aqua: #1aa8cc;
  --izp-gold: #b48536;
  --izp-ink: #153c3c;
  --izp-border: #d5e4de;
  --izp-surface: #f4f8f6;
  max-width: 1380px;
  margin: 26px auto 84px;
  padding: 0 14px;
}
#izp .izp-notice {
  position: relative;
  overflow: hidden;
  padding: 15px 20px;
  border: 1px solid #e8d6a3;
  border-left: 4px solid var(--izp-gold);
  border-radius: 0 14px 14px 0;
  background: linear-gradient(100deg,#fffaf0,#fffdf8);
  color: #70511c;
  box-shadow: 0 10px 24px rgba(43,57,31,.035);
}
#izp .izp-heading {
  position: relative;
  margin: 30px 0 28px;
  padding: 34px 38px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 22px;
  background: linear-gradient(118deg,#062d3e 0%,#0a4c60 54%,#0d715c 100%);
  box-shadow: 0 22px 44px rgba(5,45,62,.16);
}
#izp .izp-heading:before {
  content:""; position:absolute; width:430px; height:430px; right:-120px; top:-255px;
  border:1px solid rgba(255,255,255,.17); border-radius:50%;
  box-shadow:0 0 0 55px rgba(255,255,255,.035),0 0 0 112px rgba(255,255,255,.025);
}
#izp .izp-heading:after {
  content:""; position:absolute; width:360px; height:2px; bottom:0; left:38px;
  background:linear-gradient(90deg,var(--izp-aqua),transparent);
}
#izp .izp-heading span { position:relative; color:#8de5f4; font-size:11px; letter-spacing:.18em; }
#izp h2 { position:relative; margin:9px 0 10px; color:#fff; font-size:46px; letter-spacing:-.04em; }
#izp .izp-heading p { position:relative; max-width:650px; color:rgba(255,255,255,.8); font-size:16px; }
#izp .izp-grid { grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr); gap:30px; }
#izp form,#izp aside,#izp #izp-quote-wrap {
  border: 1px solid rgba(188,211,202,.75);
  border-radius: 20px;
  box-shadow: 0 18px 42px rgba(8,45,61,.09);
}
#izp form { background:rgba(255,255,255,.96); padding:36px; }
#izp aside {
  padding:36px;
  border-top:4px solid var(--izp-aqua);
  background:linear-gradient(150deg,#fbfefd 0%,#edf6f1 100%);
}
#izp h3 { color:var(--izp-deep); font-size:23px; }
#izp .izp-fieldset legend { color:var(--izp-deep); letter-spacing:.05em; font-size:13px; }
#izp .izp-check { border-color:#d7e5df; background:#fff; }
#izp .izp-check:hover { border-color:var(--izp-aqua); background:#f7fcfc; }
#izp .izp-check:has(input:checked) { border-color:#89c9b6; background:linear-gradient(90deg,#f1faf6,#fff); }
#izp input,#izp select,#izp textarea { border-color:#c8d9d2; background:#fcfefd; }
#izp input:focus,#izp select:focus,#izp textarea:focus { border-color:var(--izp-aqua); box-shadow:0 0 0 3px rgba(26,168,204,.12); }
#izp button { background:linear-gradient(112deg,#0d715c,#07546d); border-radius:10px; box-shadow:0 10px 22px rgba(7,84,109,.19); letter-spacing:.01em; }
#izp button:hover { box-shadow:0 14px 26px rgba(7,84,109,.25); }
#izp .izp-tag { color:var(--izp-gold); letter-spacing:.05em; }
#izp .izp-summary-table { border-top-color:#b9d8d1; }
#izp .izp-summary-row strong { color:var(--izp-deep); }
#izp .izp-grand { border-top:2px solid var(--izp-green); }
#izp .izp-grand dd:last-child { color:var(--izp-deep); }
#izp .izp-total { color:var(--izp-deep); font-size:36px; }
#izp #izp-quote-wrap { margin-top:34px; padding:36px; background:linear-gradient(135deg,#fff,#f6fbf8); }
#izp #izp-quote-wrap h3:after { content:""; display:block; width:46px; height:3px; margin-top:11px; background:var(--izp-aqua); border-radius:3px; }
@media(max-width:960px){
  #izp .izp-grid{grid-template-columns:1fr} #izp aside{position:static}
}
@media(max-width:760px){
  body.page-id-3796 .main-page-wrapper{background:#f7faf8}
  #izp{margin:14px 0 48px;padding:0 10px}
  #izp .izp-notice{padding:12px 14px;border-radius:0 10px 10px 0}
  #izp .izp-heading{margin:20px 0;padding:28px 21px 29px;border-radius:16px}
  #izp .izp-heading:before{width:250px;height:250px;right:-105px;top:-125px}
  #izp .izp-heading:after{left:21px;width:190px}
  #izp h2{font-size:33px;line-height:1.1}
  #izp .izp-heading p{font-size:14px;line-height:1.55}
  #izp form,#izp aside,#izp #izp-quote-wrap{padding:21px 16px;border-radius:15px}
  #izp .izp-total{font-size:27px}
}
