/*
Theme Name: Peel Business
Theme URI: https://peelbusiness.com.au
Author: The Internet Co.
Author URI: https://theinternetco.com.au
Description: Coastal directory theme for Peel Business in Mandurah and the Peel region. Visual design follows the approved beach palette and original coast illustration.
Version: 1.2.4
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: peel-business
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

:root{--navy:#102e38;--teal:#096b6c;--sand:#f5f2e9;--coral:#ed815f;--line:#d8ded8;--muted:#5c6e70}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:var(--navy);background:var(--sand);font:16px/1.6 Arial,sans-serif}button,input,select{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--coral);outline-offset:4px}.wrap{width:min(1280px,90%);margin:auto}.preview{background:var(--navy);color:#dcebe6;text-align:center;font-size:11px;padding:7px;letter-spacing:1.5px;text-transform:uppercase}header{position:sticky;top:0;z-index:9;background:#f5f2e9f5;border-bottom:1px solid var(--line)}.nav{height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{font:bold 28px Georgia,serif;letter-spacing:-1px}.logo span{color:var(--teal)}.logo .mark,.logo:hover .mark{color:white}.mark{display:inline-grid;place-items:center;background:var(--teal);color:white;width:38px;height:38px;border-radius:50%;font:italic 27px Georgia;margin-right:9px}.navlinks{display:flex;gap:30px;font-size:14px}.btn{border:0;display:inline-block;padding:14px 23px;background:var(--teal);color:white;border-radius:5px;font-weight:bold;font-size:14px}.btn.coral{background:var(--coral);color:var(--navy)}.menu{display:none}.hero{position:relative;background:var(--navy);color:white;min-height:650px;overflow:visible}.heroart{position:absolute;right:0;width:57%;height:100%;object-fit:cover;object-position:45% 50%}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#102e38 34%,#102e38c0 48%,transparent 75%);pointer-events:none}.heroinner{position:relative;z-index:1;padding:75px 0 120px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:bold;display:block;margin-bottom:21px}.eyebrow:before{content:"";display:inline-block;width:25px;height:2px;background:var(--coral);vertical-align:middle;margin-right:12px}h1{font:normal clamp(52px,5.7vw,84px)/1.06 Georgia,serif;letter-spacing:-3px;margin:0 0 28px;max-width:710px}h1 em{color:#a7d4c7;font-weight:normal}.intro{max-width:480px;color:#d0deda;font-size:17px}.hero-note{margin-top:30px;display:flex;gap:18px;align-items:center;font-size:12px;color:#c8ded6}.hero-note b{display:grid;place-items:center;border:1px solid #729d96;border-radius:50%;height:34px;width:34px;font-size:17px}.searchbox{position:relative;z-index:3;background:white;box-shadow:0 16px 50px #12323812;padding:25px 30px;border-radius:9px;margin-top:-54px}.fields{display:grid;grid-template-columns:1.6fr 1fr auto;gap:15px}.field label{display:block;font-size:10px;font-weight:bold;letter-spacing:1.4px;text-transform:uppercase;margin-bottom:5px}.field input,.field select{border:0;border-bottom:1px solid var(--line);width:100%;padding:9px 0;background:white;color:var(--navy);border-radius:0}.searchbox small{display:block;margin-top:14px;color:var(--muted);font-size:11px}.fields>.btn{align-self:center;padding:18px 34px}.quick{display:flex;gap:12px;flex-wrap:wrap;padding:22px 0 0;font-size:12px;color:var(--muted)}.quick button{border:0;background:transparent;color:var(--teal);text-decoration:underline}section{padding:78px 0}.sectionhead{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}h2{font:normal clamp(33px,3.5vw,48px)/1.15 Georgia,serif;letter-spacing:-1.4px;margin:0}p{margin:12px 0}.sectionhead p{max-width:420px;font-size:14px;color:var(--muted)}.sectionhead a{font-size:13px;border-bottom:1px solid}.categories{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.category{background:transparent;border:1px solid var(--line);border-radius:7px;text-align:left;padding:23px 17px;transition:.2s;color:var(--navy)}.category:hover,.category.active{background:var(--navy);color:white;transform:translateY(-3px)}.category i{font-style:normal;font-size:25px;display:block;margin-bottom:24px;color:var(--teal)}.category:hover i,.category.active i{color:#a7d4c7}.category strong{display:block;font-size:14px;line-height:1.4}.category small{font-size:11px;opacity:.65}.directory{padding-top:0}.resultsbar{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:22px;margin-bottom:20px;color:var(--muted);font-size:12px}.resultsbar button{background:none;border:0;color:var(--teal);text-decoration:underline}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:white;border:1px solid #e3e5dc;border-radius:8px;overflow:hidden}.cardvisual{height:170px;background:#d7e5de;position:relative;display:grid;place-items:center;overflow:hidden}.cardvisual:before,.cardvisual:after{content:"";position:absolute;border:1px solid currentColor;border-radius:50%;width:240px;height:240px;opacity:.17;left:-30px;top:50px}.cardvisual:after{left:100px;top:-120px;width:300px;height:300px}.cardvisual>span{font:normal 57px Georgia;opacity:.75;transform:rotate(-10deg)}.cardvisual .tag{position:absolute;top:14px;left:14px;font-size:9px;text-transform:uppercase;letter-spacing:1.2px;background:#ffffffd9;padding:4px 9px;border-radius:3px;color:var(--navy)}.cardbody{padding:23px}.location{font-size:10px;letter-spacing:1.4px;color:var(--teal);text-transform:uppercase}.card h3{font:24px/1.2 Georgia;margin:10px 0}.card p{color:var(--muted);font-size:13px;min-height:43px}.cardbottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:17px;margin-top:20px;font-size:11px}.cardbottom button{border:0;background:none;color:var(--teal);font-weight:bold}.smallnote{font-size:12px;color:var(--muted);margin-top:18px}.region{background:#e6ece2}.regiongrid{display:grid;grid-template-columns:.9fr 1.3fr;gap:70px;align-items:start}.regionintro p{color:var(--muted);font-size:15px}.regionlist{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.regionitem{padding:21px 0;border-top:1px solid #bdcabc;text-align:left;background:none;border-left:0;border-right:0;border-bottom:0;color:var(--navy)}.regionitem b{font:23px Georgia;display:block}.regionitem span{font-size:12px;color:var(--muted)}.regionitem:hover b{color:var(--teal)}.coastline{margin-top:30px;border:1px solid #b5c8bc;border-radius:50%;height:80px;width:200px;transform:rotate(-10deg);display:grid;place-items:center;color:var(--teal);font:italic 20px Georgia}.stories .cards{gap:25px}.story{border-top:1px solid var(--line);padding-top:20px}.story .storyart{height:160px;display:flex;align-items:center;justify-content:center;background:#dce6df;overflow:hidden;color:var(--teal);font:italic 47px Georgia}.story:nth-child(2) .storyart{background:#ebd8c5;color:#8d523d}.story:nth-child(3) .storyart{background:#cededc}.story small{font-size:10px;text-transform:uppercase;letter-spacing:1.2px;color:var(--muted);display:block;margin:18px 0 8px}.story h3{font:26px/1.2 Georgia;margin:0 0 12px}.story button{background:none;border:0;padding:0;color:var(--teal);font-weight:bold;font-size:12px}.owner{background:var(--navy);color:white;border-radius:10px;padding:55px;display:grid;grid-template-columns:1.2fr 1fr;gap:60px}.owner h2{font-size:45px;max-width:550px}.owner p{color:#c8dad3;font-size:14px;max-width:440px;margin:20px 0}.steps{border-top:1px solid #46616a;padding:17px 0;display:flex;gap:20px;font-size:13px}.steps span{color:var(--coral);font-family:Georgia}.steps b{display:block}.steps small{color:#bacdc7}footer{border-top:1px solid var(--line);padding:35px 0}.foot{display:flex;justify-content:space-between;align-items:center;gap:25px}.foot p{font-size:11px;color:var(--muted)}.foot a.power{font-size:12px;border-bottom:1px solid #8ca49b}dialog{border:0;border-radius:12px;max-width:560px;width:90%;padding:40px;color:var(--navy);box-shadow:0 30px 100px #0005}dialog::backdrop{background:#092b36b8}dialog h2{font-size:33px}dialog p{font-size:15px;color:var(--muted)}dialog .close{float:right;border:0;background:var(--sand);border-radius:50%;width:32px;height:32px}#empty{padding:35px;background:white;border-radius:6px}a:hover{color:var(--teal)}.owner a:hover{color:var(--navy)}@media(max-width:1000px){.categories{grid-template-columns:repeat(3,1fr)}.navlinks{gap:15px}.cards{gap:14px}.regiongrid{gap:35px}.owner{padding:35px;gap:30px}.logo{font-size:23px}}@media(max-width:700px){.nav{height:73px}.nav>.btn{display:none}.menu{display:block;border:1px solid var(--line);background:none;padding:8px 12px;border-radius:4px}.navlinks{display:none;position:absolute;top:73px;left:0;right:0;background:var(--sand);padding:25px}.navlinks.open{display:flex;flex-direction:column}.hero{min-height:690px}.heroart{width:100%;opacity:.45}.hero:after{background:linear-gradient(90deg,#102e38ef,#102e3860)}.heroinner{padding-top:50px}h1{font-size:58px;letter-spacing:-2px}.intro{max-width:330px}.searchbox{padding:22px;margin-top:-45px}.fields{grid-template-columns:1fr}.fields>.btn{width:100%;padding:14px}.quick{gap:6px}.sectionhead{display:block}.sectionhead a{display:inline-block;margin-top:15px}section{padding:52px 0}.categories{grid-template-columns:repeat(2,1fr)}.category{padding:17px}.category i{margin-bottom:13px}.cards{grid-template-columns:1fr}.cardvisual{height:180px}.card p{min-height:0}.regiongrid,.owner{grid-template-columns:1fr}.regiongrid{gap:28px}.regionlist{gap:0 18px}.regionitem b{font-size:20px}.owner{padding:29px;gap:28px}.owner h2{font-size:36px}.foot{align-items:start;flex-direction:column;gap:9px}.preview{font-size:9px;letter-spacing:.7px}.story .storyart{height:150px}.stories .cards{gap:35px}.resultsbar{gap:10px}.hero-note{max-width:300px}.logo{font-size:25px}}

/* Sunny Peel revision: original illustrative coastal scene, not a photograph. */
:root{--navy:#153e4a;--teal:#087e88;--sand:#fff9eb;--coral:#ffcc55;--line:#d5ded0;--muted:#526a6d}
.preview{background:#ffcc55;color:#153e4a;font-weight:bold}header{background:#fff9ebf5}.hero{background:#dff4ed;color:#153e4a;min-height:680px}.heroart{width:59%;object-position:center}.hero:after{background:linear-gradient(90deg,#dff4ed 35%,#dff4ede0 43%,#dff4ed00 65%)}.heroinner{padding-top:70px}h1{font-size:clamp(52px,5.7vw,84px)}h1 em{color:#087e88}.intro{color:#335e63;max-width:460px}.hero-note{color:#335e63}.hero-note b{background:#ffcc55;border:0;color:#153e4a}.eyebrow:before{background:#f4ad47}.searchbox{border:2px solid #153e4a;box-shadow:7px 8px 0 #d8c49e;border-radius:14px}.btn{border-radius:30px}.btn.coral{background:#ffcc55}.category{border-radius:14px;background:#f3eddb}.category:nth-child(2){background:#fce0be}.category:nth-child(3){background:#ccecf0}.category:nth-child(4){background:#e3eabe}.category:nth-child(5){background:#f6dfd0}.category:nth-child(6){background:#dbe7d2}.category:hover,.category.active{background:#153e4a;color:white}.category i{font-size:32px}.card{border-radius:15px;box-shadow:0 5px 0 #173e4708}.cardvisual{height:180px}.region{background:#dcece5;position:relative}.regionlist{background:#f9f5e9;border-radius:18px;padding:22px 26px}.regionitem{border-top-color:#ced8c7}.coastline{background:#ffcc55;border:0;color:#153e4a}.owner{background:#087e88;border-radius:24px}.owner p{color:#eef8f1}.steps{border-top-color:#7bb3af}.steps span{color:#ffdb63}.steps small{color:#e0f2ed}.stories .storyart{border-radius:14px}.story:first-child .storyart{background:#ffe4a3;color:#684830}.story:nth-child(2) .storyart{background:#f5c9b4}.story:nth-child(3) .storyart{background:#c5eaf0}.logo .mark,.logo:hover .mark{color:white}
@media(max-width:700px){.hero{min-height:830px}.heroart{width:100%;height:440px;bottom:0;opacity:1;object-position:50% 75%}.hero:after{background:linear-gradient(180deg,#dff4ed 0%,#dff4ed 40%,#dff4ed00 68%)}.heroinner{padding-top:35px}.hero h1{font-size:54px;line-height:1.04;margin-bottom:17px}.hero .eyebrow{font-size:9px;max-width:300px;margin-bottom:16px}.intro{font-size:15px;max-width:350px}.hero-note{margin-top:18px;font-size:11px}.regionlist{padding:12px 18px}.owner{border-radius:18px}}
.pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.price-card{border:2px solid var(--line);background:white;border-radius:22px;padding:36px;display:flex;flex-direction:column;align-items:flex-start}.price-card.featured{background:#dff4ed;border-color:#087e88}.price-card h3{font:32px Georgia;margin:0 0 12px}.price{font:bold 48px Georgia;line-height:1.2;color:var(--navy)}.price span{font:14px Arial}.price-card ul{padding-left:20px;line-height:2}.price-card p{font-size:14px;color:var(--muted)}.price-card .package-note{font-size:12px;margin-top:auto;padding:16px 0;max-width:450px}.price-card .eyebrow{font-size:10px}@media(max-width:700px){.pricing-grid{grid-template-columns:1fr}.price-card{padding:26px}}

/* Peel Business additions: portal, forms, empty states, accessibility, prose. */
.skip{position:absolute;left:-999px;top:8px}
.skip:focus{left:16px;z-index:100;background:#ffcc55;color:#153e4a;padding:10px 14px;border-radius:8px}
.visually-hidden{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.navlinks a[aria-current="page"]{border-bottom:2px solid var(--teal)}
.site-notice{background:#ffcc55;color:#153e4a;padding:10px 16px;font-size:14px}
.site-notice a{text-decoration:underline}
.empty-panel{background:#fff;border:2px dashed var(--line);border-radius:16px;padding:32px;color:var(--navy)}
.empty-panel h3{font:normal 32px Georgia,serif;margin:0 0 8px}
.cardvisual img{width:100%;height:100%;object-fit:cover}
.card .tag.featured{background:#ffcc55;color:#153e4a;font-weight:bold}
.prose{max-width:760px}
.prose h1,.portal h1,dialog h2{font:normal clamp(36px,4vw,56px)/1.1 Georgia,serif;letter-spacing:-1.5px;margin:0 0 12px}
.prose h2{font:normal 32px/1.2 Georgia,serif;margin:28px 0 8px}
.draft-banner{background:#ffcc55;color:#153e4a;border-radius:14px;padding:16px 18px;margin:0 0 22px}
.crumbs{font-size:13px;color:var(--muted);margin:0 0 18px}
.crumbs a{text-decoration:underline}
.portal-nav{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 26px}
.portal-nav a{border:1px solid var(--line);border-radius:999px;padding:8px 14px;background:#fff;font-size:14px}
.portal-nav a[aria-current="page"]{background:#153e4a;color:#fff}
.form-grid{display:grid;gap:16px}
.form-card{background:#fff;border:2px solid var(--line);border-radius:22px;padding:28px}
.form-card label,.field label{display:block;font-size:12px;font-weight:bold;letter-spacing:.4px;margin-bottom:6px}
.form-card input,.form-card select,.form-card textarea{width:100%;border:0;border-bottom:1px solid var(--line);background:#fff;padding:10px 0;color:var(--navy)}
.form-card textarea{border:1px solid var(--line);border-radius:10px;padding:10px}
.notice{border-radius:12px;padding:12px 14px;margin:0 0 16px}
.notice.ok{background:#dff4ed}
.notice.error{background:#f6dfd0}
.plan-choice{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.plan-choice label.price-card{cursor:pointer}
.plan-choice input{width:auto;margin-right:8px}
.plan-choice label.price-card:has(input:checked){outline:3px solid #087e88}
.status-row{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 18px}
.pill{display:inline-block;background:#fff;border:1px solid var(--line);border-radius:999px;padding:4px 10px;font-size:12px}
table.data{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden}
table.data th,table.data td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top;font-size:14px}
.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:12px}
.gallery img{width:100%;border-radius:12px;height:220px;object-fit:cover}
.contact-list{list-style:none;padding:0}
.contact-list li{padding:8px 0;border-top:1px solid var(--line)}
.foot nav{display:flex;flex-wrap:wrap;gap:12px;font-size:13px}
.invoice-sheet{background:#fff;color:#153e4a;padding:32px;border-radius:16px;max-width:860px;margin:20px auto}
.invoice-sheet h1{font:normal 40px Georgia,serif;margin:0}
.watermark{font-weight:bold;background:#ffcc55;display:inline-block;padding:6px 10px;border-radius:8px}
@media(max-width:700px){.plan-choice{grid-template-columns:1fr}.gallery{grid-template-columns:1fr}.form-card{padding:18px}}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*{transition:none!important}.category:hover{transform:none}}
