:root{
  --ivory:#F8F5F0;--white:#FFFDFC;--sand:#C6A377;--sand-soft:#E7D8C5;
  --taupe:#A99072;--charcoal:#3F403E;--black:#181817;--gold:#D99B37;
  --danger:#8B3E37;--danger-bg:#F8ECE8;--line:rgba(63,64,62,.15);
  --shadow:0 18px 55px rgba(44,36,27,.08);--radius:18px;
  --serif:"Iowan Old Style","Baskerville","Times New Roman",serif;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif
}
*{box-sizing:border-box}html{background:var(--ivory);color:var(--black);font-family:var(--sans);-webkit-text-size-adjust:100%}
body{margin:0;min-width:320px;background:var(--ivory)}button,input,select{font:inherit}button{touch-action:manipulation}img{max-width:100%;display:block}
:focus-visible{outline:3px solid rgba(217,155,55,.45);outline-offset:3px}.site{min-height:100vh;padding-bottom:calc(28px + env(safe-area-inset-bottom))}
.topbar{height:74px;display:flex;align-items:center;justify-content:space-between;padding:calc(10px + env(safe-area-inset-top)) 20px 10px;max-width:1120px;margin:0 auto}
.brand-logo{width:150px;height:auto}.topbar-label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--taupe);white-space:nowrap}
.hero{max-width:1120px;margin:0 auto;padding:0 16px}.hero-media{position:relative;overflow:hidden;min-height:245px;border-radius:22px;background:var(--sand);box-shadow:var(--shadow)}
.hero-media img{width:100%;height:100%;min-height:245px;object-fit:cover;object-position:64% center}.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(248,245,240,.94) 0%,rgba(248,245,240,.66) 39%,rgba(248,245,240,0) 67%)}
.hero-copy{position:absolute;z-index:2;inset:0;display:flex;flex-direction:column;justify-content:center;padding:28px 22px;max-width:70%}.eyebrow{margin:0 0 9px;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#856B4D}
h1,h2,h3,p{margin-top:0}h1{margin-bottom:10px;font-family:var(--serif);font-weight:500;font-size:clamp(35px,8vw,56px);line-height:.96;letter-spacing:-.025em}.hero-copy p{max-width:410px;margin-bottom:0;color:#4F4B45;font-size:14px;line-height:1.55}
.main{width:min(100% - 32px,760px);margin:24px auto 0}.card{background:var(--white);border:1px solid rgba(166,143,113,.16);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px 18px}.section-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}
.step{flex:0 0 auto;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--sand);color:var(--white);font-weight:700;font-size:13px}.section-head h2{margin:0 0 3px;font-family:var(--serif);font-size:26px;font-weight:500;line-height:1.05}.section-head p{margin:0;color:#6A655E;font-size:13px;line-height:1.45}
.field-label{display:block;margin:0 0 8px;font-size:13px;font-weight:700;color:#4C4843}.select-wrap{position:relative}select{width:100%;min-height:52px;appearance:none;border:1px solid #D8CBB9;border-radius:12px;background:var(--ivory);color:var(--black);padding:0 46px 0 15px;font-size:17px}.select-wrap:after{content:"⌄";pointer-events:none;position:absolute;right:17px;top:11px;font-size:22px;color:var(--taupe)}
.price-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.mini-stat{padding:12px;border-top:1px solid var(--line)}.mini-stat span{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#7C756D;margin-bottom:5px}.mini-stat strong{font-family:var(--serif);font-size:18px;font-weight:600}.spacer{height:14px}
.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}.quick-btn{min-height:48px;border:1px solid #D8CBB9;border-radius:11px;background:var(--white);color:#514B45;padding:8px 7px;font-size:13px;font-weight:700}.quick-btn[aria-pressed="true"]{background:var(--sand);border-color:var(--sand);color:var(--white)}
.money-field{display:flex;align-items:center;gap:8px;min-height:58px;padding:0 14px;border:1px solid #D8CBB9;border-radius:12px;background:var(--ivory)}.money-field:focus-within{border-color:var(--sand);box-shadow:0 0 0 3px rgba(198,163,119,.15)}.currency{font-family:var(--serif);font-size:24px;color:var(--taupe)}.money-field input{width:100%;border:0;outline:0;background:transparent;color:var(--black);font-size:20px;font-variant-numeric:tabular-nums;min-width:0}.money-field .suffix{font-size:12px;color:#777067}
.slider-wrap{margin:16px 2px 2px}input[type="range"]{width:100%;min-height:34px;accent-color:var(--sand);cursor:pointer}.range-labels{display:flex;justify-content:space-between;gap:12px;color:#837A70;font-size:11px}
.error{display:none;margin-top:12px;border-radius:12px;background:var(--danger-bg);color:var(--danger);padding:12px 13px;font-size:13px;line-height:1.45}.error.show{display:flex;align-items:center;justify-content:space-between;gap:10px}.error button{min-height:40px;flex:0 0 auto;border:1px solid currentColor;border-radius:9px;background:transparent;color:inherit;font-weight:700;padding:0 12px}
.result{margin-top:14px;background:linear-gradient(145deg,#282826,#171716);color:var(--white);border-radius:22px;padding:24px 20px;box-shadow:0 20px 65px rgba(18,18,16,.18)}.result .label{display:block;color:#D8C9B5;font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;margin-bottom:7px}.result-amount{margin:0;font-family:var(--serif);font-size:clamp(37px,10vw,58px);line-height:1;font-weight:500;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.result-rate{margin:9px 0 18px;color:#E5D8C7;font-size:14px}.tramo{border-top:1px solid rgba(255,255,255,.14);padding-top:15px}.tramo-title{margin:0 0 6px;font-family:var(--serif);font-size:20px;font-weight:500}.tramo-copy{margin:0;color:#E9E5DE;font-size:14px;line-height:1.55}
details{margin-top:16px;border-top:1px solid rgba(255,255,255,.14);padding-top:14px}summary{min-height:44px;display:flex;align-items:center;cursor:pointer;color:#E0CBAE;font-size:13px;font-weight:700}.breakdown{padding:6px 0 2px;font-size:13px;line-height:1.55;color:#ECE7DF}.breakdown-row{display:flex;justify-content:space-between;gap:18px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.08)}.breakdown-row span:last-child{text-align:right;font-variant-numeric:tabular-nums}.formula{margin-top:12px;padding:12px;border-radius:10px;background:rgba(255,255,255,.06);color:#F2E7D8;overflow-wrap:anywhere}
.pve{margin-top:14px;padding:18px;border-radius:16px;background:#EDE2D3;border:1px solid rgba(166,143,113,.18)}.pve small{display:block;margin-bottom:5px;color:#786B5C;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.pve strong{display:block;font-family:var(--serif);font-size:27px;font-weight:600;margin-bottom:4px}.pve p{margin:0;color:#645B51;font-size:12px;line-height:1.45}.notice{margin:20px 0 0;color:#716B64;font-size:11px;line-height:1.55;text-align:center}.footer{width:min(100% - 32px,760px);margin:24px auto 0;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:14px;color:#867E75;font-size:10px;line-height:1.4}
@media(min-width:700px){.topbar{height:84px;padding-left:26px;padding-right:26px}.brand-logo{width:168px}.hero{padding:0 22px}.hero-media,.hero-media img{min-height:320px}.hero-copy{padding:40px 46px;max-width:60%}.hero-copy p{font-size:15px}.main{margin-top:28px}.card{padding:28px 26px}.result{padding:30px 28px}}
@media(max-width:420px){.topbar-label{font-size:9px;letter-spacing:.11em}.brand-logo{width:132px}.hero-copy{max-width:76%;padding:24px 18px}.hero-media,.hero-media img{min-height:228px}.quick-btn{font-size:12px}.result-amount{font-size:39px}.footer{display:block}.footer span{display:block;margin-bottom:5px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
