/* CASA CONSAPEVOLE — stile del prototipo V9 */
:root{--forest:#28534d;--sage:#9cac97;--sand:#e7dccc;--bg:#f8f6f1;--ink:#343832;--muted:#69726b;--line:#e3e6de}*{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:Arial,Helvetica,sans-serif;color:var(--ink)}header{background:white;border-bottom:1px solid var(--line);padding:15px max(5%,calc((100vw - 1160px)/2));display:flex;align-items:center;justify-content:space-between;gap:15px}header strong{font-size:13px;letter-spacing:.15em;color:var(--forest)}header small{font-size:12px;color:var(--muted)}main{max-width:1160px;margin:auto;padding:35px 5%;min-height:75vh}h1,h2,h3{font-family:Georgia,serif;font-weight:normal}h1{font-size:clamp(32px,4vw,51px);line-height:1.14;margin:15px 0}h2{font-size:30px}h3{font-size:23px;margin:8px 0 12px}p{line-height:1.65;color:#61665e}.eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--forest);font-weight:bold}.hero{display:grid;grid-template-columns:1fr 1fr;background:white;border-radius:20px;overflow:hidden;box-shadow:0 8px 35px #24382b12}.hero .copy{padding:55px 45px}.hero-art{min-height:380px;background:linear-gradient(135deg,#e4d9c8,#f5f1ea 58%,#a5b3a1);display:flex;align-items:center;justify-content:center}.hero-art img{width:min(270px,70%);border-radius:50%;mix-blend-mode:multiply}button{border:0;background:var(--forest);color:white;padding:13px 19px;border-radius:9px;cursor:pointer;font-size:14px;transition:.15s}button:hover{filter:brightness(.9)}button:disabled{opacity:.45;cursor:not-allowed}.secondary{background:white;color:var(--forest);border:1px solid var(--forest)}.quiet{background:#edf1eb;color:var(--forest)}.hidden{display:none!important}.topline{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.card,.panel{background:white;border:1px solid var(--line);border-radius:16px;padding:25px}.card{display:flex;flex-direction:column;justify-content:space-between;min-height:210px}.card p{font-size:14px;margin-top:4px}.card button{align-self:flex-start}.panel{margin:20px 0}.narrow{max-width:800px;margin:20px auto;padding:32px}.tag{font-size:11px;color:var(--forest);font-weight:bold;text-transform:uppercase;letter-spacing:.09em}.progress{height:9px;background:#e5e8e2;border-radius:15px;overflow:hidden;margin:15px 0 24px}.progress div{height:100%;background:var(--forest);transition:width .2s}.qmeta{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}.choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:23px 0}.choice{background:#fff;color:var(--ink);border:1px solid #d4ddd2;border-radius:12px;min-height:65px;text-align:left;padding:14px}.choice[aria-pressed=true]{background:#e9f0e8;color:var(--forest);border:2px solid var(--forest)}.row{padding:14px;background:#f5f7f3;border-radius:11px;margin:12px 0}.row strong{display:block;margin-bottom:8px}select,input,textarea{width:100%;padding:12px;border-radius:9px;border:1px solid #ccd6cb;font:inherit;background:white;color:var(--ink)}textarea{min-height:110px;resize:vertical}.navrow{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:22px}.pill{display:inline-block;padding:6px 11px;margin:4px;background:#e8eee7;color:#33534b;border-radius:99px;font-size:13px}.summary{padding:18px;border-radius:12px;background:#f4f7f2;margin:12px 0;break-inside:avoid}.summary h3{font-size:19px}.muted{font-size:13px;color:var(--muted)}.split{display:grid;grid-template-columns:1fr 1fr;gap:20px}.price{font-size:24px;color:var(--forest);font-family:Georgia,serif}.choice .sub{display:block;font-size:12px;color:var(--muted);margin-top:7px}.warning{background:#fff4e4;border:1px solid #e8c99c;padding:14px;border-radius:9px}.ok{background:#e9f2e9;padding:14px;border-radius:9px}.bar{height:10px;background:#e4e8e1;border-radius:12px;overflow:hidden}.bar div{height:100%;background:var(--sage)}.mini{font-size:13px;color:var(--muted)}.admin-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}footer{text-align:center;padding:22px;font-size:12px;color:#7e857c}.hero-label{background:#eaf0e9;padding:7px 12px;border-radius:30px;display:inline-block;color:var(--forest);font-size:12px}@media(max-width:800px){.grid{grid-template-columns:1fr 1fr}.hero{grid-template-columns:1fr}.hero-art{min-height:200px;order:-1}.hero-art img{width:145px}.hero .copy{padding:32px 25px}.split{grid-template-columns:1fr}}@media(max-width:570px){.grid,.choices{grid-template-columns:1fr}main{padding:22px 4%}.narrow{padding:20px}.card{min-height:170px}header small{display:none}}@media print{header,footer,.no-print,button{display:none!important}main{padding:0}.panel{border:0;margin:0;max-width:none}.summary{border:1px solid #ddd}.hidden{display:none!important}body{background:white}}

/* Gallerie fotografiche */
.visual-intro{padding:12px 16px;background:#edf2ec;border-radius:12px;margin-top:18px;font-size:13px;color:#42584d;line-height:1.5}
.photo-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin:22px 0}
.photo-choice{position:relative;display:flex;flex-direction:column;padding:0;background:white;color:var(--ink);border:2px solid #e1e4db;border-radius:15px;overflow:hidden;text-align:left;min-height:0;box-shadow:0 3px 15px #263f2910}
.photo-choice img{display:block;width:100%;height:210px;object-fit:cover;background:#e9e6df;transition:transform .25s}
.photo-choice:hover img{transform:scale(1.025)}
.photo-choice .photo-caption{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:13px 15px;min-height:58px;font-weight:600;font-size:14px}
.photo-choice .photo-check{display:flex;align-items:center;justify-content:center;flex:0 0 24px;width:24px;height:24px;border:1px solid #c5cfc2;border-radius:50%;color:transparent}
.photo-choice[aria-pressed=true]{border-color:var(--forest);background:#eff4ed;color:var(--forest)}
.photo-choice[aria-pressed=true] .photo-check{background:var(--forest);color:white;border-color:var(--forest)}
.photo-choice .photo-swatch{position:absolute;top:12px;left:12px;display:flex;gap:4px;padding:6px;background:#ffffffdc;border-radius:30px}
.photo-choice .photo-swatch span{height:18px;width:18px;border-radius:50%;border:1px solid #0002}
.photo-credit{font-size:11px;color:var(--muted);margin-top:0}
@media(max-width:570px){.photo-choices{gap:11px}.photo-choice img{height:145px}.photo-choice .photo-caption{font-size:12px;padding:10px;min-height:64px}}
.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0}.gallery-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.gallery-card>img{width:100%;height:180px;object-fit:cover}.gallery-info{padding:14px}.gallery-info p{font-size:13px}.gallery-info button{font-size:12px;padding:9px}.thumbs{display:flex;gap:9px;flex-wrap:wrap}.thumbs img{height:95px;width:120px;object-fit:cover;border-radius:9px}dialog{border:0;border-radius:17px;padding:24px;max-width:520px;width:calc(100% - 30px);box-shadow:0 20px 80px #0005}dialog::backdrop{background:#142b25aa}dialog img{width:100%;max-height:220px;object-fit:cover;border-radius:10px}.detail-tags{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:15px 0}.detail-tags label{display:flex;align-items:center;gap:6px;font-size:13px}.detail-tags input{width:auto}@media(max-width:800px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:570px){.gallery-grid{grid-template-columns:1fr}}@media print{dialog{display:none!important}} 
.material-family{margin:12px 0;padding:15px;border:1px solid #d8d6cb;border-radius:14px;background:#faf9f5}.material-family summary{font-weight:700;cursor:pointer;padding:5px}.material-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:14px}.material-item{display:flex;flex-direction:column;gap:9px;align-items:flex-start;padding:12px;border:1px solid #d7d4c8;border-radius:12px;background:#fff;color:#344c40;cursor:pointer}.material-item[aria-pressed="true"]{outline:3px solid #718e77}.material-sample{width:100%;height:80px;border-radius:8px;border:1px solid #0002;background-image:repeating-linear-gradient(120deg,transparent 0px,transparent 18px,#ffffff16 20px,transparent 25px)!important}.more-examples{display:block;font-size:12px;text-decoration:underline;padding:8px;cursor:pointer}.photo-swatch span{width:25px;height:25px;border-radius:50%;display:inline-block;border:1px solid #0002}
.v8-material-photo{width:46%;height:118px;object-fit:cover;border-radius:8px;display:inline-block;margin:0 1% 8px}.material-item{min-width:180px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px}.material-item strong{width:100%;text-align:center}.photo-choice img{object-fit:cover}
.v9-group{margin:14px 0;border:1px solid #e3e6de;border-radius:12px;padding:13px}.v9-group summary{font-weight:bold;color:#28534d;cursor:pointer}.v9-q{display:block;width:100%;text-align:left;background:#f3f5f1;color:#343832;margin:8px 0;padding:10px;border:1px solid #dfe5dc}.v9-q.selected{border:2px solid #28534d;background:#e7eee6}.v9-option{border:1px solid #e3e6de;border-radius:12px;padding:15px;margin:12px 0}.v9-option input[type=text],.v9-option textarea{margin:7px 0}.v9-thumb{width:115px;height:86px;object-fit:cover;border-radius:8px}.v9-lib{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:12px}.v9-tile{padding:10px;border:1px solid #dce3d9;border-radius:10px;background:white;overflow-wrap:anywhere}.v9-tile img{width:100%;height:112px;object-fit:cover;border-radius:8px}.v9-tile button{margin-top:6px;padding:7px 9px;font-size:12px}.v9-preview{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.v9-preview-card{border:1px solid #dfe4dc;border-radius:10px;padding:10px}.v9-preview-card img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:7px}.v9-help{font-size:12px;color:#69726b}.v9-actions{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0}.v9-actions button{padding:8px 10px;font-size:12px}.v9-status{font-size:12px;color:#566c5a}

/* Integrazione Kirby */
.header-right{display:flex;align-items:center;gap:14px}
.save-status{font-size:12px;color:var(--muted);white-space:nowrap}
.save-status.error{color:#a5532a}
.link-button{background:none;color:var(--forest);padding:6px 0;font-size:12px;text-decoration:underline}
.preview-banner{background:#fff4e4;border-bottom:1px solid #e8c99c;color:#7a5524;text-align:center;font-size:13px;padding:9px 5%}
.login-form{display:grid;gap:10px;max-width:360px;margin-top:20px}
.login-form label{font-size:13px;color:var(--muted)}
.login-form button{justify-self:start}
.submit-panel{border-color:var(--sage)}
.submitted{display:inline-block;background:#e9f2e9;color:var(--forest);padding:6px 12px;border-radius:99px;font-size:13px}
.photo-choice .sub{padding:0 15px 13px;margin-top:-6px}
.summary p{white-space:pre-line}
.photo-placeholder{display:block;width:100%;height:210px;background:linear-gradient(145deg,#e9e1d5,#b7c4b2)}
.example-images{display:grid;gap:12px}
.example-images img{width:100%;max-height:65vh;object-fit:contain;border-radius:10px}
#exampleDialog{max-width:860px}
.proposal{background:white;border:1px solid var(--line);border-radius:16px;padding:22px;margin:18px 0}
.proposal h3{margin-top:0}
.proposal .thumbs img{cursor:zoom-in;height:130px;width:170px}
.proposal select{margin:14px 0 10px}
.thumbs .thumb{padding:0;background:none;border:0;border-radius:var(--radius,3px);cursor:zoom-in}
@media(max-width:570px){.header-right small{display:none}.proposal .thumbs img{height:95px;width:120px}}
@media print{.preview-banner,.save-status{display:none!important}}

/* ==========================================================
   Allineamento allo stile del sito elisacastioni
   (Work Sans, palette, bottoni 40px raggio 3px, spaziature)
   ========================================================== */
:root{--forest:#264F4B;--forest-dark:#1c3b38;--sand:#e9e2d4;--bg:#F5F1E8;--ink:#3E3835;--muted:#7a7370;--line:rgba(135,129,126,.28);--radius:3px;--space:24px}
body{font-family:"Work Sans",Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5;color:var(--ink);-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:inherit;color:var(--ink)}
h1{font-weight:250;line-height:1.05;letter-spacing:-.04em;margin:12px 0 18px}
h2{font-weight:300;letter-spacing:-.03em;margin:32px 0 16px}
h3{font-weight:400;font-size:22px;letter-spacing:-.02em;line-height:1.2;margin:6px 0 10px}
p{color:#5f5955}
.eyebrow,.tag{font-weight:500;letter-spacing:.07em;color:var(--forest)}
.eyebrow{display:block;font-size:12px}
header{background:var(--bg);border-bottom:1px solid var(--line)}
header strong{font-weight:500;letter-spacing:.12em;color:var(--forest)}
footer{color:var(--muted);letter-spacing:.07em;font-size:11px;padding:32px 22px}

/* superfici più asciutte, come le card del sito */
.hero,.card,.panel,.proposal,.gallery-card,.summary,.material-family,dialog{border-radius:var(--radius)}
.hero{box-shadow:none;border:1px solid var(--line)}
.card,.panel,.proposal,.gallery-card{border-color:var(--line)}
.hero-art{background:linear-gradient(135deg,#e6dccb,#f5f1e8 58%,#a9b5a4)}
.progress,.bar{border-radius:var(--radius)}

/* bottoni */
main :where(button:not(.choice,.material-item,.link-button,.thumb)),
dialog :where(button){display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:40px;padding:0 20px;border:1px solid var(--forest);border-radius:var(--radius);background:var(--forest);color:var(--bg);font-family:inherit;font-size:15px;font-weight:400;line-height:1.2;transition:background-color .2s ease-out,color .2s ease-out,border-color .2s ease-out}
main :where(button:not(.choice,.material-item,.link-button,.thumb)):hover,
dialog :where(button):hover{filter:none;background:var(--forest-dark);border-color:var(--forest-dark)}
main .secondary,dialog .secondary,main .quiet{background:transparent;color:var(--ink);border-color:var(--ink)}
main .secondary:hover,dialog .secondary:hover{background:var(--ink)!important;border-color:var(--ink)!important;color:var(--bg)}
button:disabled{opacity:.35;cursor:not-allowed}
main .secondary:disabled,main .secondary:disabled:hover{background:transparent!important;color:var(--ink)!important;border-color:var(--ink)!important}
.link-button{font-family:inherit;color:var(--ink);padding:0}
.link-button:hover{filter:none;opacity:.7}

/* spaziature attorno ai bottoni */
main>section>button.secondary:first-child{margin-bottom:32px}
.topline{align-items:flex-start;margin-bottom:8px}
.topline>button{margin-top:6px;flex-shrink:0}
.hero .copy>button{margin:12px 0 8px}
.card{gap:20px;padding:24px}
.card h3{margin-top:10px}
.panel{padding:28px;margin:24px 0}
.panel>button{margin-top:10px}
.panel>p+button,.panel>p+p+button{margin-top:16px}
.panel>h3:first-child{margin-top:0}
.narrow{padding:36px 40px}
.qmeta{margin-top:10px}
#qtitle{margin-top:22px}
.navrow{margin-top:36px;gap:16px}
#proposals>.eyebrow{margin-top:0}
.submit-panel #submitInfo:empty{display:none}
#exampleDialog>button,#photoDialog .navrow,#submitDialog .navrow{margin-top:20px}
dialog h3{margin-top:0}

.gallery-info{padding:16px}
.gallery-info button{padding:0 16px;font-size:14px;margin-top:6px}

/* scelte e campi */
.choice,.photo-choice,.material-item,select,input,textarea{border-radius:var(--radius)}
.choice{border-color:var(--line);font-family:inherit;font-size:15px}
.choice[aria-pressed=true]{background:#e8ece4;border-color:var(--forest)}
.photo-choice{border-width:1px;box-shadow:none}
.photo-choice[aria-pressed=true]{border-width:2px;background:#eef1ea}
select,input,textarea{border-color:var(--line);font-family:inherit;font-size:15px}
select:focus,input:focus,textarea:focus{outline:none;border-color:var(--forest)}
.visual-intro,.row,.summary,.ok,.warning{border-radius:var(--radius)}
.pill{border-radius:var(--radius)}
.more-examples{color:var(--ink)}
.photo-check{border-radius:50%}

@media(max-width:570px){
  .narrow{padding:22px}
  .panel{padding:20px}
  main>section>button.secondary:first-child{margin-bottom:22px}
  .navrow button{flex:1}
}
