:root { --gold:#a77a19; --gold-light:#f7edcf; --ink:#312715; --paper:#fffdf7; --line:#e5d2a4; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; background:var(--paper); color:var(--ink); font-family:Georgia,"Times New Roman",serif; }
.site-header { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px 7%; border-bottom:1px solid var(--line); background:#fffaf0; }
.brand,h1,h2 { color:var(--gold); font-family:"Brush Script MT","Segoe Script","Lucida Handwriting",cursive; font-weight:400; }.brand { font-size:clamp(2rem,5vw,3rem); text-decoration:none; }.site-menu { position:relative; }.site-menu summary { list-style:none; padding:12px 20px; border-radius:999px; background:var(--gold); color:#fff; cursor:pointer; font-weight:bold; }.site-menu summary::-webkit-details-marker { display:none; }.site-menu summary span { margin-right:8px; }
.site-menu nav { position:absolute; z-index:3; top:calc(100% + 10px); right:0; display:flex; flex-direction:column; width:min(250px,calc(100vw - 48px)); padding:10px; border:1px solid var(--line); border-radius:14px; background:#fffdf7; box-shadow:0 12px 32px #31271520; }.site-menu nav a { padding:11px 13px; border-radius:8px; color:var(--ink); text-decoration:none; }.site-menu nav a:hover,.site-menu nav a[aria-current="page"] { background:var(--gold-light); }
.hero { padding:clamp(75px,12vw,135px) 24px; text-align:center; background:radial-gradient(ellipse at top,#fff5d8,transparent 65%),#fffaf0; }.eyebrow { margin:0; color:#7e5a0f; font:700 .74rem/1.2 Arial,sans-serif; letter-spacing:2.5px; text-transform:uppercase; }h1 { margin:18px 0 12px; font-size:clamp(4.5rem,12vw,8rem); line-height:.95; }h2 { margin:10px 0; font-size:clamp(2.4rem,5vw,3.5rem); line-height:1; }.hero>p:not(.eyebrow) { max-width:480px; margin:0 auto 26px; font-size:1.15rem; line-height:1.7; }.actions { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; }
.button { display:inline-block; padding:13px 20px; border:1px solid var(--gold); border-radius:999px; background:var(--gold); color:white; text-decoration:none; font-weight:bold; cursor:pointer; }.button:hover { background:#805b0e; }.button-light { background:transparent; color:var(--gold); }.button-light:hover { color:#fff; }.content-grid,.page-content { max-width:1100px; margin:auto; padding:clamp(42px,8vw,80px) 24px; }.content-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }.feature-card,.panel,.price-card,.gallery-slot { padding:26px; border:1px solid var(--line); border-radius:16px; background:#fff; }.feature-card p:not(.eyebrow),.panel p,.price-card p,.gallery-slot p { line-height:1.65; }.text-link { color:#72500c; font-weight:bold; text-underline-offset:5px; }.page-intro { max-width:700px; margin:0 auto 38px; text-align:center; }.page-intro p { line-height:1.7; }.price-grid,.gallery-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(205px,1fr)); gap:18px; }.price-card h2 { font-size:2.1rem; }.price { display:block; color:var(--gold); font-size:1.15rem; font-weight:bold; }.notice { margin-top:28px; padding:18px; border-left:4px solid var(--gold); background:var(--gold-light); line-height:1.6; }
.order-form { display:grid; gap:18px; max-width:720px; margin:auto; }.form-row { display:grid; grid-template-columns:1fr 1fr; gap:18px; }label { display:grid; gap:8px; font-weight:bold; }input,textarea { width:100%; padding:12px; border:1px solid #cbb57e; border-radius:8px; background:#fffdf8; color:var(--ink); font:inherit; }textarea { min-height:130px; resize:vertical; }.form-note { margin:0; line-height:1.55; font-size:.92rem; }.gallery-card { overflow:hidden; border:1px solid var(--line); border-radius:16px; background:#fff; }.gallery-card img { display:block; width:100%; aspect-ratio:4/5; object-fit:cover; background:#fffaf0; }.gallery-card div { padding:18px; }.gallery-card h2 { margin:0 0 8px; font-size:2rem; }.gallery-card p { margin:0; color:#72500c; font-weight:bold; }footer { display:flex; justify-content:center; gap:20px; padding:30px 24px; border-top:1px solid var(--line); background:#fff7e3; }footer a { color:var(--ink); }a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible { outline:3px solid #72500c; outline-offset:4px; }@media(max-width:700px){.content-grid,.form-row { grid-template-columns:1fr; }.site-menu nav { left:50%; right:auto; transform:translateX(-50%); }}
:root { --gallery-gap:48px; }
.gallery-grid { grid-template-columns:repeat(3,minmax(0,1fr)); column-gap:var(--gallery-gap); row-gap:56px; align-items:start; }
.gallery-card img { object-fit:cover; object-position:center; }
@media(max-width:900px){.gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); --gallery-gap:32px; row-gap:40px; }}
@media(max-width:600px){.gallery-grid { grid-template-columns:1fr; --gallery-gap:0; row-gap:32px; }}
:root { --gold:#9b6500; --gold-light:#f1d37b; --paper:#fffaf0; --line:#c79a35; }
.site-header { background:#f7e5b1; }
.hero { background:radial-gradient(ellipse at top,#ffe8a2,transparent 65%),#d4a23a; }
.hero h1 { color:#754900; }
.hero .button-light { color:#754900; border-color:#754900; }
:root { --gold:#a86f05; --gold-light:#ffe1ed; --paper:#ffd6e6; --line:#e59ab9; --ink:#845100; }
body { background:#ffd6e6; color:var(--ink); }
.site-header { background:#ffc2db; }
.site-menu nav,.feature-card,.panel,.price-card,.gallery-card { background:#ffeaf2; }
.hero { background:radial-gradient(ellipse at top,#ffeaf3,transparent 65%),#f3a6c6; }
footer { background:#ffc2db; }
.brand,h1,h2 { color:#b77b09; background:linear-gradient(120deg,#8e5800 0%,#fff0a6 35%,#c18309 56%,#fff3b8 74%,#925a00 100%); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; text-shadow:0 1px 1px #fff4b850; }
.eyebrow,.text-link,.gallery-card p { color:#9a6200; }
.hero h1 { color:#b77b09; }
.hero .button-light { color:#8e5800; border-color:#8e5800; }
:root { --gold:#ffd700; --gold-light:#f1afd2; --paper:#e79ac3; --line:#ffd700; --ink:#ffd700; }
body,.site-header,.site-menu nav,.feature-card,.panel,.price-card,.gallery-card,footer { background:#ff1493; color:#ffd700; }
.hero { background:radial-gradient(ellipse at top,#ff66b9,transparent 65%),#e794c1; }
.button,.button-light { background:#ff1493; border-color:#ffd700; color:#ffd700; }
.button:hover,.button-light:hover,.site-menu nav a:hover,.site-menu nav a[aria-current="page"] { background:#ff5bb1; color:#ffd700; }
input,textarea { background:#ff0088; border-color:#ffd700; color:#ffd700; }
.gallery-card img { background:#ea8bbe; }
.eyebrow,.text-link,.gallery-card p { color:#ffd700; }
.hero .button-light { color:#ffd700; border-color:#ffd700; }
.site-menu summary { background:#de91ba; border:1px solid #ffd700; color:#ffd700; }
input::placeholder,textarea::placeholder { color:#ffd700; opacity:.85; }
:root { --gold:#a66a00; --gold-light:#ffd1e5; --paper:#ffd1e5; --line:#d994b5; --ink:#a66a00; }
body,.site-header,.site-menu nav,.feature-card,.panel,.price-card,.gallery-card,footer { background:#ffd1e5; color:#a66a00; }
.hero { background:radial-gradient(ellipse at top,#ffeaf4,transparent 65%),#f6b9d3; }
.button,.button-light,.site-menu summary { background:#ffd1e5; border-color:#a66a00; color:#a66a00; }
.button:hover,.button-light:hover,.site-menu nav a:hover,.site-menu nav a[aria-current="page"] { background:#f6b9d3; color:#a66a00; }
input,textarea { background:#ffd1e5; border-color:#a66a00; color:#a66a00; }
.gallery-card img { background:#ffd1e5; }
.eyebrow,.text-link,.gallery-card p,input::placeholder,textarea::placeholder,.hero .button-light { color:#a66a00; border-color:#a66a00; }
:root { --gold:#d4af37; --ink:#b8860b; }
body { color:#b8860b; text-shadow:0 1px 1px #fff3b0; }
.brand,h1,h2,p,label,.price,.form-note,footer strong,footer a,.text-link { color:#8b6506; background-image:linear-gradient(120deg,#8e5800 0%,#fff0a6 32%,#c48912 52%,#fff4b8 74%,#925a00 100%); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.site-menu summary,.site-menu nav a,.button,.button-light,input,textarea { color:#d4af37; text-shadow:0 1px 1px #7a480055; }

/* The theme button controls dark mode independently of device settings. */
:root { color-scheme:light; --text-gold:#6b5610; --gold:var(--text-gold); --ink:var(--text-gold); }
body,body * { color:var(--text-gold); -webkit-text-fill-color:var(--text-gold) !important; }
.brand,h1,h2,p,label,.price,.form-note,footer strong,footer a,.text-link { background-image:none; }
a:hover,a:focus,a:visited,.button:hover,.button-light:hover,.site-menu nav a:hover,.site-menu nav a[aria-current="page"],.hero .button-light { color:var(--text-gold); }
input::placeholder,textarea::placeholder { color:var(--text-gold); -webkit-text-fill-color:var(--text-gold); opacity:1; }
input::file-selector-button { color:var(--text-gold); -webkit-text-fill-color:var(--text-gold); }
.brand,.brand:hover,.brand:focus,.brand:visited { color:var(--text-gold); -webkit-text-fill-color:var(--text-gold); background:none; }
:root[data-theme="dark"] { color-scheme:dark; --text-gold:#e2c66d; --paper:#24171e; --gold-light:#49303e; --line:#957c46; }
:root[data-theme="dark"] body,:root[data-theme="dark"] .site-header,:root[data-theme="dark"] footer { background:var(--paper); }
:root[data-theme="dark"] body,:root[data-theme="dark"] body * { text-shadow:none; }
:root[data-theme="dark"] .hero { background:#35212d; }
:root[data-theme="dark"] .site-menu nav,:root[data-theme="dark"] .feature-card,:root[data-theme="dark"] .panel,:root[data-theme="dark"] .price-card,:root[data-theme="dark"] .gallery-card,:root[data-theme="dark"] .gallery-slot { background:#30212a; border-color:var(--line); }
:root[data-theme="dark"] .site-header,:root[data-theme="dark"] footer { border-color:var(--line); }
:root[data-theme="dark"] .button,:root[data-theme="dark"] .button-light,:root[data-theme="dark"] .site-menu summary { background:#3d2934; border-color:var(--text-gold); }
:root[data-theme="dark"] .button:hover,:root[data-theme="dark"] .button-light:hover,:root[data-theme="dark"] .site-menu nav a:hover,:root[data-theme="dark"] .site-menu nav a[aria-current="page"] { background:var(--gold-light); }
:root[data-theme="dark"] input,:root[data-theme="dark"] textarea { background:#21171d; border-color:var(--line); }
:root[data-theme="dark"] input::file-selector-button { background:#49303e; border:1px solid var(--line); border-radius:4px; }
:root[data-theme="dark"] .notice { background:#3d2934; border-color:var(--text-gold); }
:root[data-theme="dark"] .gallery-card img { background:#30212a; }
:root[data-theme="dark"] a:focus-visible,:root[data-theme="dark"] button:focus-visible,:root[data-theme="dark"] input:focus-visible,:root[data-theme="dark"] textarea:focus-visible,:root[data-theme="dark"] summary:focus-visible { outline-color:var(--text-gold); }

.theme-toggle { padding:10px 14px; border:1px solid var(--text-gold); border-radius:999px; background:transparent; color:var(--text-gold); font:700 .9rem Georgia,serif; cursor:pointer; white-space:nowrap; }
.theme-toggle:hover { background:var(--gold-light); }
.theme-toggle:focus-visible { outline:3px solid var(--text-gold); outline-offset:3px; }
.site-header { flex-wrap:wrap; }
.header-controls { display:flex; align-items:center; gap:12px; }
.theme-toolbar { display:flex; justify-content:flex-end; padding:20px 7% 0; }
