:root{--bg: #fff7ef;--bg-2: #fff1e5;--surface: rgba(255, 247, 239, .84);--surface-strong: rgba(255, 247, 239, .94);--surface-soft: rgba(255, 241, 229, .82);--text: #171819;--muted: #60646b;--line: rgba(23, 24, 25, .1);--line-strong: rgba(23, 24, 25, .18);--shadow: 0 14px 34px rgba(23, 24, 25, .08);--accent: #cb6f2c;--accent-strong: #924a16;--accent-soft: #fcd0b1;--green: #2f7b59;--green-soft: rgba(47, 123, 89, .1);--blue: #4f6f92;--blue-soft: rgba(79, 111, 146, .1);--button: #3a4046;--button-hover: #272c31;--button-text: #f5f6f7;--chip: rgba(255, 247, 239, .74);--header-bg: rgba(255, 247, 239, .64);--bg-accent-1: rgba(203, 111, 44, .18);--bg-accent-2: rgba(201, 131, 79, .14);--bg-accent-3: rgba(220, 160, 116, .12);--bg-accent-4: rgba(203, 111, 44, .1);--bg-accent-5: rgba(214, 148, 101, .08);--bg-accent-6: rgba(213, 147, 109, .07);--inner-soft: #fff7ef;--inner-soft-2: #fff1e5;--surface-contrast: #f2dfce;--radius: 20px;--radius-sm: 12px;--max: 1120px}:root[data-mode=dark]{--bg: #121518;--bg-2: #191d22;--surface: rgba(27, 31, 36, .86);--surface-strong: rgba(27, 31, 36, .95);--surface-soft: rgba(27, 31, 36, .7);--text: #f0f3f6;--muted: #abb4bf;--line: rgba(240, 243, 246, .1);--line-strong: rgba(240, 243, 246, .18);--shadow: 0 16px 36px rgba(0, 0, 0, .28);--accent-soft: rgba(207, 116, 65, .16);--green-soft: rgba(47, 123, 89, .16);--blue-soft: rgba(79, 111, 146, .16);--button: #e2e8ee;--button-hover: #f5f7f9;--button-text: #1a1e22;--chip: rgba(27, 31, 36, .82);--header-bg: rgba(18, 21, 24, .66);--bg-accent-1: rgba(213, 122, 53, .2);--bg-accent-2: rgba(85, 114, 140, .16);--bg-accent-3: rgba(48, 128, 90, .14);--bg-accent-4: rgba(213, 122, 53, .12);--bg-accent-5: rgba(48, 128, 90, .1);--bg-accent-6: rgba(85, 114, 140, .1);--inner-soft: rgba(32, 37, 43, .82);--inner-soft-2: rgba(37, 42, 48, .82);--surface-contrast: rgba(39, 45, 52, .9)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--text);background:radial-gradient(circle at 8% -4%,var(--bg-accent-1),transparent 34%),radial-gradient(circle at 92% 6%,var(--bg-accent-2),transparent 30%),radial-gradient(circle at 84% 30%,var(--bg-accent-3),transparent 30%),radial-gradient(circle at 14% 68%,var(--bg-accent-4),transparent 32%),radial-gradient(circle at 88% 86%,var(--bg-accent-5),transparent 34%),radial-gradient(circle at 4% 94%,var(--bg-accent-6),transparent 34%),linear-gradient(180deg,var(--bg),var(--bg-2));font-size:.96rem;line-height:1.56;min-height:100vh;transition:background .25s ease,color .25s ease}h1,h2,h3,p{margin:0}a{color:inherit;text-decoration:none}.container{width:min(calc(100% - 28px),var(--max));margin-inline:auto}.panel{background:linear-gradient(180deg,var(--surface-strong),var(--surface));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 15px;border-radius:999px;border:1px solid transparent;font-size:.88rem;font-weight:700;transition:transform .16s ease,background .16s ease,border-color .16s ease}.btn:hover{transform:translateY(-1px)}.btn--primary{background:var(--button);color:var(--button-text)}.btn--primary:hover{background:var(--button-hover)}.btn--secondary{border-color:var(--line);background:transparent}.reveal{opacity:0;transform:translateY(16px);transition:opacity .5s ease,transform .5s ease}.reveal.visible{opacity:1;transform:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.site-header{position:sticky;top:0;z-index:30;backdrop-filter:blur(16px);background:var(--header-bg);border-bottom:1px solid var(--line)}.site-header__row{min-height:68px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand mode" "nav nav";align-items:center;gap:10px 16px;padding:10px 0}.brand{display:inline-flex;align-items:center;gap:12px;grid-area:brand;min-width:0}.brand__mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex:0 0 auto;box-shadow:var(--shadow)}.brand__mark-svg{display:block;width:100%;height:100%}.brand__mark-bg{fill:#171819}.brand__mark-border{fill:none;stroke:#cf7441;stroke-opacity:.45}.brand__mark-l1{fill:none;stroke:#f7f5f2;stroke-width:6;stroke-linecap:round;stroke-linejoin:round}.brand__mark-l2{fill:none;stroke:#cf7441;stroke-width:6;stroke-linecap:round;stroke-linejoin:round}:root[data-mode=dark] .brand__mark-bg,:root[data-theme=dark] .brand__mark-bg{fill:#102132}.brand__name{font-weight:700;letter-spacing:-.02em}.brand__sub{color:var(--muted);font-size:.78rem}.nav{grid-area:nav;display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-start}.nav a,.mode-btn{border:1px solid var(--line);background:var(--chip);color:var(--text);border-radius:999px;padding:9px 12px;font-size:.86rem}.mode-btn{cursor:pointer;grid-area:mode;justify-self:end;min-width:42px;padding-inline:0;font-size:1.05rem}main{padding:22px 0 64px}section{margin-top:18px;scroll-margin-top:88px}.hero{padding:28px;display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.eyebrow{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:7px 11px;background:var(--accent-soft);color:var(--accent-strong);font-size:.78rem;font-weight:700}.hero h1{margin-top:14px;font-size:clamp(1.95rem,3vw,3.05rem);line-height:1.02;letter-spacing:-.045em}.hero p{margin-top:14px;color:var(--muted)}.mini-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.mini-item{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--inner-soft-2);padding:12px}.mini-item strong{display:block;font-size:.93rem;margin-bottom:4px}.mini-item span{color:var(--muted);font-size:.84rem}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.label-row{display:flex;gap:8px;flex-wrap:wrap}.label{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:4px 9px;font-size:.73rem;font-weight:700;background:var(--inner-soft)}.label--green{background:var(--green-soft);color:var(--green)}.label--blue{background:var(--blue-soft);color:var(--blue)}.label--orange{background:var(--accent-soft);color:var(--accent-strong)}.grid-two{display:grid;gap:18px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.section-card{padding:22px}.section-head p{color:var(--muted);margin-top:6px}.portfolio-list{display:grid;gap:12px;margin-top:14px}.project{border:1px solid var(--line-strong);border-radius:14px;background:linear-gradient(180deg,var(--inner-soft-2),var(--inner-soft));padding:14px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr);gap:12px}.project p{color:var(--muted);margin-top:8px}.project__preview{border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:12px}.thumb{position:relative;height:140px;border-radius:10px;border:1px solid var(--line);margin-bottom:10px;overflow:hidden;background:var(--surface)}.thumb__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .2s ease}.thumb__image--night{opacity:0}:root[data-mode=dark] .thumb__image--day{opacity:0}:root[data-mode=dark] .thumb__image--night{opacity:1}.price-range{margin-top:12px;font-size:1.62rem;font-weight:800;letter-spacing:-.04em}.price-range small{margin-left:6px;font-size:.82rem;color:var(--muted);font-weight:600}.price-list{margin-top:14px;display:grid;gap:10px}.price-item{border-top:1px solid var(--line);padding-top:10px;display:grid;grid-template-columns:auto 1fr;gap:10px}.price-item:first-child{border-top:none;padding-top:0}.price-item p{color:var(--muted);font-size:.86rem;margin-top:5px}.process-grid{margin-top:14px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.step{border:1px solid var(--line-strong);border-radius:12px;background:linear-gradient(180deg,var(--inner-soft-2),var(--inner-soft));padding:12px}.step span{color:var(--muted);display:block;margin-top:6px;font-size:.86rem}.form-card form{display:grid;gap:12px}.form-privacy{margin:0;color:var(--muted);font-size:.78rem}.form-status{margin:0;font-size:.82rem;color:var(--accent-strong)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}label{display:grid;gap:7px;font-size:.86rem;font-weight:600}input,select,textarea{width:100%;border:1px solid var(--line-strong);border-radius:12px;background:var(--inner-soft-2);color:var(--text);padding:12px}button[disabled],.btn[disabled]{opacity:.65;cursor:not-allowed;transform:none}textarea{min-height:120px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.footer{padding-bottom:30px}.footer-card{border:1px solid var(--line);border-radius:16px;background:var(--surface);display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:14px 18px;color:var(--muted)}.enquiry-target{scroll-margin-top:72px}.back-top{position:fixed;right:14px;bottom:14px;width:36px;height:36px;border-radius:999px;border:1px solid var(--line);background:var(--chip);color:var(--text);font-size:1rem;line-height:1;display:grid;place-items:center;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease}.back-top.is-visible{opacity:1;pointer-events:auto;transform:none}@media(max-width:980px){.hero,.grid-two,.project{grid-template-columns:1fr}.hero h1{max-width:none}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.site-header{position:static}.site-header__row{grid-template-columns:1fr auto;grid-template-areas:"brand mode" "nav nav";align-items:start;gap:10px}.nav{width:100%;justify-content:flex-start}.brand__sub{display:none}.hero,.section-card{padding:18px}.mini-list,.form-grid,.process-grid{grid-template-columns:1fr}.actions{flex-direction:column}.btn{width:100%}}@media(min-width:721px){.site-header__row{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"brand nav mode"}.nav{justify-content:flex-end}}.page-title{font-size:clamp(1.7rem,2.8vw,2.5rem);letter-spacing:-.035em;line-height:1.05}.page-lead{margin-top:12px;color:var(--muted);max-width:64ch}.page-main{padding:26px 0 58px}
