@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@1,600&display=swap');

:root{--navy:#132846;--blue:#2f6eb8;--ice:#eef5f8;--line:#dbe3e8;--ink:#18202b;--muted:#647184;--white:#fff;--accent:#c8e3dc;--shadow:0 20px 60px rgba(19,40,70,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f7f9fa;color:var(--ink);font-family:"DM Sans",Arial,sans-serif}.topbar{height:76px;padding:0 max(24px,calc((100vw - 1180px)/2));display:flex;align-items:center;gap:12px;background:var(--white);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.brand-mark{width:38px;height:38px;display:grid;place-items:center;background:var(--navy);color:#fff;font-family:Georgia,serif;font-size:22px}.topbar strong,.topbar span{display:block}.topbar span{font-size:12px;color:var(--muted)}.text-button{margin-left:auto;border:0;background:none;color:var(--blue);font:inherit;font-weight:600;cursor:pointer}.intro{max-width:1180px;margin:0 auto;padding:68px 24px 42px}.eyebrow{font-size:12px;letter-spacing:.18em;font-weight:700;color:var(--blue)}h1{margin:10px 0 16px;color:var(--navy);font-size:clamp(42px,7vw,78px);line-height:.98;letter-spacing:-.045em;max-width:840px}h1 em{font-family:"Playfair Display",Georgia,serif;color:var(--blue);font-weight:600}.intro>p:last-child{font-size:18px;color:var(--muted);max-width:650px;line-height:1.55}.workspace{max-width:1180px;margin:0 auto;padding:0 24px 70px;display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:28px;align-items:start}.services{display:grid;gap:18px}.group{background:#fff;border:1px solid var(--line)}.group-title{padding:22px 24px 15px;display:flex;gap:14px;align-items:center}.group-number{color:var(--blue);font-weight:700;font-size:13px}.group h2{font-size:20px;color:var(--navy);margin:0}.item{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px 24px;border-top:1px solid var(--line);cursor:pointer;transition:.18s ease}.item:hover{background:#f8fbfc}.item:has(input:checked){background:var(--ice)}.item input[type=checkbox]{appearance:none;width:21px;height:21px;border:1.5px solid #8e9aaa;background:#fff;display:grid;place-items:center;margin:0}.item input:checked{background:var(--navy);border-color:var(--navy)}.item input:checked:after{content:"✓";color:#fff;font-size:14px}.item-copy strong{display:block;font-size:15px}.item-copy small{display:block;color:var(--muted);margin-top:3px;line-height:1.4}.item-price{text-align:right;color:var(--navy);font-weight:700;white-space:nowrap}.quantity{display:flex;align-items:center;gap:6px;margin-top:8px}.quantity button{width:28px;height:28px;border:1px solid var(--line);background:#fff;color:var(--navy);font-size:18px;cursor:pointer}.quantity input{width:46px;height:28px;border:1px solid var(--line);text-align:center;font:inherit}.web-extra,.portrait-extra{padding-left:66px}.web-extra.disabled,.portrait-extra.disabled{opacity:.45}.summary{position:sticky;top:100px;background:var(--navy);color:#fff;padding:26px;box-shadow:var(--shadow)}.summary-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.18);font-weight:600}.summary-head span:last-child{font-size:12px;color:#aac2db}.selected{min-height:120px;padding:16px 0;max-height:330px;overflow:auto}.empty{color:#aac2db;font-size:14px}.selected-row{display:grid;grid-template-columns:1fr auto;gap:12px;padding:8px 0;font-size:13px}.selected-row span:last-child{font-weight:700}.notice{font-size:12px;line-height:1.45;background:rgba(200,227,220,.12);color:#d9eee9;padding:12px;margin-bottom:14px}.hidden{display:none}.total-row,.deposit{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid rgba(255,255,255,.22);padding-top:18px}.total-row strong{font-size:30px}.deposit{border:0;padding-top:8px;color:#aac2db;font-size:12px}.deposit strong{font-size:14px;color:#fff}.fineprint{font-size:11px;line-height:1.5;color:#9eb2c8;margin:20px 0}.primary{width:100%;border:0;background:var(--accent);color:var(--navy);padding:14px;font:inherit;font-weight:700;cursor:pointer}.terms{background:var(--ice);padding:62px max(24px,calc((100vw - 1180px)/2))}.terms h2{color:var(--navy);font-size:34px;margin:0 0 28px}.term-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.term-grid article{background:#fff;padding:24px;border-top:3px solid var(--blue)}.term-grid b{color:var(--blue);font-size:13px}.term-grid h3{margin:18px 0 8px;color:var(--navy)}.term-grid p{margin:0;color:var(--muted);font-size:14px;line-height:1.5}footer{padding:28px;text-align:center;color:var(--muted);font-size:12px}footer span{margin:0 8px;color:var(--blue)}
@media(max-width:900px){.workspace{grid-template-columns:1fr}.summary{position:relative;top:auto}.term-grid{grid-template-columns:1fr}}
@media(max-width:560px){.intro{padding-top:42px}.topbar{padding:0 16px}.topbar>div:nth-child(2){display:none}.workspace{padding-left:14px;padding-right:14px}.item{grid-template-columns:24px 1fr;padding:15px}.item-price{grid-column:2;text-align:left}.web-extra,.portrait-extra{padding-left:48px}.summary{padding:22px}}
@media print{.topbar,.intro,.services,.terms,footer,.primary{display:none}.workspace{display:block;padding:0}.summary{position:static;box-shadow:none;min-height:100vh}.selected{max-height:none}}
.order-section{max-width:1180px;margin:0 auto;padding:10px 24px 80px;display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start}.order-copy{padding-top:24px}.order-copy h2{font-size:clamp(34px,4vw,54px);line-height:1.03;letter-spacing:-.035em;color:var(--navy);margin:10px 0 20px}.order-copy h2 em{font-family:"Playfair Display",Georgia,serif;color:var(--blue);font-weight:600}.order-copy>p:last-child{color:var(--muted);line-height:1.65;max-width:420px}.order-form{background:#fff;border:1px solid var(--line);padding:30px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.order-form label{display:grid;gap:7px;color:var(--navy);font-size:13px;font-weight:700}.order-form label>span{color:var(--muted);font-weight:400}.order-form input,.order-form textarea{width:100%;border:1px solid #cad4dc;background:#f9fbfc;padding:12px 13px;font:inherit;color:var(--ink);border-radius:0;outline:none}.order-form input:focus,.order-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,110,184,.1)}.order-form textarea{resize:vertical}.order-form .full{grid-column:1/-1}.consent{display:flex!important;grid-template-columns:20px 1fr!important;align-items:start;line-height:1.45}.consent input{width:18px;height:18px;margin:1px 0 0}.consent span{color:var(--muted)!important}.send-button{border:0;background:var(--navy);color:#fff;padding:15px 18px;font:inherit;font-weight:700;display:flex;justify-content:space-between;cursor:pointer}.send-button:hover{background:#1d3d68}.form-message{min-height:0;font-size:13px;color:#b23a2f}.form-message:empty{display:none}
@media(max-width:900px){.order-section{grid-template-columns:1fr;gap:18px}}
@media(max-width:560px){.order-section{padding-left:14px;padding-right:14px}.order-form{grid-template-columns:1fr;padding:20px}.order-form label{grid-column:1/-1}}
@media print{.order-section{display:none}}
